Merge lp:~brianaker/gearmand/GEARMAN_COMMAND_CAN_DO_TIMEOUT-valgrind into lp:gearmand

Proposed by Brian Aker
Status: Merged
Merged at revision: 773
Proposed branch: lp:~brianaker/gearmand/GEARMAN_COMMAND_CAN_DO_TIMEOUT-valgrind
Merge into: lp:gearmand
Diff against target: 24 lines (+11/-2)
1 file modified
libgearman-server/server.cc (+11/-2)
To merge this branch: bzr merge lp:~brianaker/gearmand/GEARMAN_COMMAND_CAN_DO_TIMEOUT-valgrind
Reviewer Review Type Date Requested Status
Tangent Trunk Pending
Review via email: mp+169607@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'libgearman-server/server.cc'
--- libgearman-server/server.cc 2013-05-11 23:09:32 +0000
+++ libgearman-server/server.cc 2013-06-15 08:56:29 +0000
@@ -530,9 +530,18 @@
530530
531 case GEARMAN_COMMAND_CAN_DO_TIMEOUT:531 case GEARMAN_COMMAND_CAN_DO_TIMEOUT:
532 {532 {
533 if (packet->arg_size[1] > GEARMAN_MAXIMUM_INTEGER_DISPLAY_LENGTH)
534 {
535 return gearmand_log_gerror(GEARMAN_DEFAULT_LOG_PARAM, GEARMAND_INVALID_PACKET, "GEARMAND_INVALID_PACKET:strtol");
536 }
537
538 char strtol_buffer[GEARMAN_MAXIMUM_INTEGER_DISPLAY_LENGTH +1];
539 memcpy(strtol_buffer, packet->arg[1], packet->arg_size[1]);
540 strtol_buffer[packet->arg_size[1]]= 0;
533 char *endptr;541 char *endptr;
534 long timeout= strtol((char *)packet->arg[1], &endptr, 10);542 errno= 0;
535 if (timeout == LONG_MIN or timeout == LONG_MAX)543 long timeout= strtol(strtol_buffer, &endptr, 10);
544 if (timeout == LONG_MIN or timeout == LONG_MAX or errno != 0)
536 {545 {
537 return gearmand_log_perror(GEARMAN_DEFAULT_LOG_PARAM, errno, "GEARMAN_COMMAND_CAN_DO_TIMEOUT:strtol");546 return gearmand_log_perror(GEARMAN_DEFAULT_LOG_PARAM, errno, "GEARMAN_COMMAND_CAN_DO_TIMEOUT:strtol");
538 }547 }

Subscribers

People subscribed via source and target branches

to all changes: