Commit 004a9c6d authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Fix unit test for format_helper_exit_status

Fix format_helper_exit_status to allow full HEX_ERRNO_SIZE answers,
*and* increase the buffer length again.
parent 6eb7f2f8
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3294,7 +3294,7 @@ format_helper_exit_status(unsigned char child_state, int saved_errno,
   * Count how many chars of space we have left, and keep a pointer into the
   * current point in the buffer.
   */
  left = HEX_ERRNO_SIZE;
  left = HEX_ERRNO_SIZE+1;
  cur = hex_errno;

  /* Emit child_state */
@@ -3594,7 +3594,7 @@ tor_spawn_background(const char *const filename, const char **argv,
     this is used for printing out the error message */
  unsigned char child_state = CHILD_STATE_INIT;

  char hex_errno[HEX_ERRNO_SIZE + 1];
  char hex_errno[HEX_ERRNO_SIZE + 2]; /* + 1 should be sufficient actually */

  static int max_fd = -1;

+1 −0
Original line number Diff line number Diff line
@@ -2169,6 +2169,7 @@ test_util_exit_status(void *ptr)
  n = format_helper_exit_status(0xFF, -0x80000000, hex_errno);
  test_streq("FF/-80000000\n", hex_errno);
  test_eq(n, strlen(hex_errno));
  test_eq(n, HEX_ERRNO_SIZE);

  clear_hex_errno(hex_errno);
  n = format_helper_exit_status(0x7F, 0, hex_errno);