Skip to content
Snippets Groups Projects
Select Git revision
  • 0e2d57fd50f61e668be3180bc8f25991ea88aa8c
  • passt default
  • master
  • pu
  • todo
  • next
  • maint
  • v2.8.0-rc1
  • v2.8.0-rc0
  • v2.7.2
  • v2.7.1
  • v2.7.0
  • v2.6.5
  • v2.7.0-rc3
  • v2.7.0-rc2
  • v2.7.0-rc1
  • v2.7.0-rc0
  • v2.6.4
  • v2.6.3
  • v2.6.2
  • v2.6.1
  • v2.3.10
  • v2.5.4
  • v2.4.10
  • v2.6.0
  • v2.6.0-rc3
  • v2.5.3
27 results

argv-array.h

Blame
    • Jeff King's avatar
      c1189cae
      refactor argv_array into generic code · c1189cae
      Jeff King authored
      
      The submodule code recently grew generic code to build a
      dynamic argv array. Many other parts of the code can reuse
      this, too, so let's make it generically available.
      
      There are two enhancements not found in the original code:
      
        1. We now handle the NULL-termination invariant properly,
           even when no strings have been pushed (before, you
           could have an empty, NULL argv). This was not a problem
           for the submodule code, which always pushed at least
           one argument, but was not sufficiently safe for
           generic code.
      
        2. There is a formatted variant of the "push" function.
           This is a convenience function which was not needed by
           the submodule code, but will make it easier to port
           other users to the new code.
      
      Signed-off-by: default avatarJeff King <peff@peff.net>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
      c1189cae
      History
      refactor argv_array into generic code
      Jeff King authored
      
      The submodule code recently grew generic code to build a
      dynamic argv array. Many other parts of the code can reuse
      this, too, so let's make it generically available.
      
      There are two enhancements not found in the original code:
      
        1. We now handle the NULL-termination invariant properly,
           even when no strings have been pushed (before, you
           could have an empty, NULL argv). This was not a problem
           for the submodule code, which always pushed at least
           one argument, but was not sufficiently safe for
           generic code.
      
        2. There is a formatted variant of the "push" function.
           This is a convenience function which was not needed by
           the submodule code, but will make it easier to port
           other users to the new code.
      
      Signed-off-by: default avatarJeff King <peff@peff.net>
      Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    README.md 993 B