1. 25 8月, 2014 2 次提交
  2. 24 8月, 2014 1 次提交
  3. 22 8月, 2014 15 次提交
    • Brian West's avatar
      FS-6735 · f4a04e65
      Brian West 提交于
      f4a04e65
    • Brian West's avatar
      FS-6747 #resolve · b6dc4a6c
      Brian West 提交于
      b6dc4a6c
    • Travis Cross's avatar
      Handle gcc's overzealous unused-result warning · b874048e
      Travis Cross 提交于
      Modern static analyzers warn when a variable is set but not used.  GCC
      warns when the result of a function marked as
      `__attribute__((warn_unused_result))` is not set to some variable,
      even when the function is cast to `(void)`, which is the recognized
      way of indicating the intent to ignore the result.  We treat all
      warnings as errors.
      
      The combination of behaviors here makes it difficult if we really
      don't care about the result of the function; the obvious workarounds
      are precluded.
      
      GCC's maintainers don't consider this to be a bug:
      
        Why do you think this is a bug?  warn_unused_result is for cases where
        "not checking the result is either a security problem or always a
        bug".
      
        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509#c1
      
      GLIBC however marks functions like `read` and `write` with this
      attribute.  While it certainly in most cases is correct to act on
      their return value, in some cases we really just don't care.
      
      So when we see that we're building with GCC, and that we're building
      with all warnings enabled, we'll just pass -Wno-unused-result to
      disable the warning.
      
      ref: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25509
      ref: https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
      b874048e
    • Italo Rossi's avatar
      Adding switchname to xml_cdr and json_cdr · d55505ce
      Italo Rossi 提交于
      d55505ce
    • William King's avatar
    • Travis Cross's avatar
      Help the static analyzer in `handle_ice` · aa1a05d0
      Travis Cross 提交于
      Clang's static analyzer thinks we could be using `hosts` here when it
      is NULL.  We probably weren't, but it's easy to see how it could think
      so.  We were checking whether `from_addr` matched `ice->addr` three
      times, and between the second on third time we might have modified the
      `ice->addr`; however we only get there if it matched the second time,
      so we could only make it not match at that point and avoid the third
      branch.  We can't make it match where it did not before.
      
      We'll simplify the logic a bit here so static analyzers (and humans)
      can hopefully see this more readily.
      aa1a05d0
    • Travis Cross's avatar
      Return NULL from `sub_alloc` for zero size · 3c32dd3b
      Travis Cross 提交于
      When zero was passed for the size to `sub_alloc`, we were passing this
      size on to `malloc` or `calloc`, which is unusual enough that static
      analyzers warn about this (POSIX says that either NULL or a pointer
      will be returned).
      
      We'll instead just return NULL right away.
      3c32dd3b
    • Travis Cross's avatar
      Fix spelling "Couldnt" -> "Couldn't" · 959e672a
      Travis Cross 提交于
      959e672a
    • Travis Cross's avatar
      Handle zero channels when allocating for resampler · decc19cc
      Travis Cross 提交于
      When the number of channels was zero, we were calling malloc with a
      size of zero.  While defined, this is unusual.  And since we're
      initializing the speex resampler as though there were one channel in
      this case, we should probably just allocate the space for it.
      decc19cc
    • Travis Cross's avatar
      Refactor to avoid warning about realloc usage · 164fa133
      Travis Cross 提交于
      Clang's static analyzer noticed the result of realloc was being
      assigned to a pointer of a different type than was used to calculate
      the new size.  We can make things simpler and more idiomatic here by
      using the correct pointer type and letting C's pointer arithmetic
      automatically handle some multiplication.
      
      We also use the distributive property here to simplify the calculation
      for memset.
      164fa133
    • Travis Cross's avatar
      Remove dead assignments in `switch.c` · 2cf6fd72
      Travis Cross 提交于
      2cf6fd72
    • Travis Cross's avatar
      Handle null argv in `switch.c` · 4f81e594
      Travis Cross 提交于
      4f81e594
    • Travis Cross's avatar
      Remove dead assignment · e2d67d4e
      Travis Cross 提交于
      e2d67d4e
    • Travis Cross's avatar
      Avoid using undefined memory in `switch_fulldate_cmp` · b5a87aea
      Travis Cross 提交于
      The `switch_split_date` and `switch_split_time` functions only set as
      many variables as they believe exist values in the input string.
      Since we didn't have defaults assigned we would read undefined stack
      memory if the input string didn't contain e.g. an hour.
      
      With this commit, we use 1970 if no year is present, January if no
      month is present, the first day of the month if none is given, and
      zero for each of a missing hour, minute, or second.
      b5a87aea
    • Travis Cross's avatar
      Refactor `switch_fulldate_cmp` · bf42dd65
      Travis Cross 提交于
      We're moving the variable declarations down to the smallest possible
      scope (a good idea in general) so we can address the use of undefined
      memory by the function in a later commit.
      bf42dd65
  4. 21 8月, 2014 5 次提交
  5. 20 8月, 2014 3 次提交
  6. 19 8月, 2014 2 次提交
  7. 18 8月, 2014 4 次提交
  8. 17 8月, 2014 1 次提交
  9. 16 8月, 2014 2 次提交
  10. 15 8月, 2014 5 次提交