gawk-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gawk-diffs] [SCM] gawk branch, master, updated. gawk-4.1.0-2593-gc8b9f5


From: Arnold Robbins
Subject: [gawk-diffs] [SCM] gawk branch, master, updated. gawk-4.1.0-2593-gc8b9f5d
Date: Fri, 7 Jul 2017 08:45:49 -0400 (EDT)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".

The branch, master has been updated
       via  c8b9f5d5ac4e23a394dc79eccbfb824ddee531ef (commit)
       via  4cd70811e7e335fe568f62c564ac2bef0515694f (commit)
      from  8e8326d91e40166e25921b323ad468399c11d60d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=c8b9f5d5ac4e23a394dc79eccbfb824ddee531ef

commit c8b9f5d5ac4e23a394dc79eccbfb824ddee531ef
Merge: 8e8326d 4cd7081
Author: Arnold D. Robbins <address@hidden>
Date:   Fri Jul 7 15:44:18 2017 +0300

    Merge branch 'gawk-4.1-stable'

diff --cc ChangeLog
index b199e73,4c34f19..b4f65ac
--- a/ChangeLog
+++ b/ChangeLog
@@@ -1,510 -1,16 +1,523 @@@
  2017-07-07         Arnold D. Robbins     <address@hidden>
  
+       Remove warnings from GCC 7.1 compilation.
+ 
+       * awk.h (fatal_tag_valid): Change type to int.
+       * awkgram.y (yylex): Set did_newline to true instead of using ++.
+       * builtin.c (format_tree): Set lj to true instead of using ++.
+       * cmd.h (pager_quit_tag_valid): Change type to int.
+       * debug.c (pager_quit_tag_valid): Change type to int.
+       (do_clear): Make bp_found an int, change uses.
+       (do_run): Treat fatal_tag_valid as an int.
+       * msg.c (fatal_tag_valid): Change type to int.
+ 
++2017-07-07         Arnold D. Robbins     <address@hidden>
++
 +      * gawapi.h: Bring descriptive comments up to date, minor edits.
 +      * io.c: Add some initial comments to functions where they were missing.
 +
 +2017-07-03         Arnold D. Robbins     <address@hidden>
 +
 +      * gawkapi.h, gawkapi.c: Typo fixes in comments.
 +
 +2017-06-25         Andrew J. Schorr     <address@hidden>
 +
 +      * gawkmisc.c (xmalloc): Remove function now in support/xalloc.h.
 +
 +2017-06-22         Arnold D. Robbins     <address@hidden>
 +
 +      Make pretty-printing include parentheses that were explicitly
 +      in the source code. Thanks to Hermann Peifer for the bug report.
 +
 +      * awk.h (OPCODE): Add Op_parens.
 +      * awkgram.y [Grammar]: If pretty-printing, add Op_parens ot end of
 +      list for parenthesized expression.
 +      * eval.c (optypetab): Add Op_parens.
 +      * interpret.h (r_interpret): Ditto.
 +      * profile.c (pprint): Ditto.  For ?:, don't parenthesize it.
 +      (pp_parenthesize): If string starts with left paren, return early.
 +      (parenthesize): Don't call div_on_left_mul_on_right.
 +      (div_on_left_mul_on_right): Remove function.
 +      (pp_concat): Don't add parentheses if expressions already have them.
 +      * NEWS: Updated.
 +
 +2017-06-21         Andrew J. Schorr     <address@hidden>
 +
 +      Replace malloc/memset combinations with calloc by using the new ezalloc
 +      macro.
 +      * awkgram.y (yyerror, do_add_srcfile, funcuse): Replace emalloc+memset
 +      with ezalloc.
 +      * cint_array.c (cint_lookup, cint_copy, tree_lookup, tree_copy,
 +      leaf_lookup, leaf_copy): Ditto.
 +      * command.y (mk_cmdarg): Ditto.
 +      * debug.c (add_item): Ditto.
 +      * eval.c (setup_frame): Ditto.
 +      * field.c (set_record): Ditto.
 +      * gawkapi.c (api_flatten_array_typed): Ditto.
 +      * int_array.c (int_copy, grow_int_table): Ditto.
 +      * io.c (init_awkpath, iop_alloc): Ditto.
 +      * node.c (str2wstr): Ditto.
 +      * re.c (make_regexp): Ditto.
 +      * str_array.c (str_copy, grow_table): Ditto.
 +      * symbol.c (make_params, new_context): Ditto.
 +
 +2017-06-19         Andrew J. Schorr     <address@hidden>
 +
 +      * awk.h (ezalloc): Add new macro to allocate memory initialized to zero.
 +      (ezalloc_real): New inline function to call calloc.
 +      * gawkapi.h (ezalloc): Add new API macro to allocate memory initialized
 +      to zero.
 +
 +2017-06-18         Arnold D. Robbins     <address@hidden>
 +
 +      * builtin.c (mbc_char_count): Fix code to correctly traverse
 +      the string. Thanks to Hermann Peifer for the bug report.
 +      * config.guess, config.sub: Update to latest from GNULIB.
 +      * gettext.h: Pull in a few nice changes from GNULIB version.
 +
 +2017-05-30         Arnold D. Robbins     <address@hidden>
 +
 +      * NEWS: Mention PROCINFO["argv"].
 +
 +2017-05-24         Andrew J. Schorr     <address@hidden>
 +
 +      * field.c (set_FIELDWIDTHS): Add check to protect against blank
 +      characters after a `:' skip separator. 
 +      Fix field number in error message, thanks to a bug report
 +      from Michal Jaegermann.
 +
 +2017-05-23         Andrew J. Schorr     <address@hidden>
 +
 +      * field.c (set_FIELDWIDTHS): Simplify the logic and consistentify
 +      use of UINT_MAX.  Make sure that negative value after : is caught.
 +
 +2017-05-23         Arnold D. Robbins     <address@hidden>
 +
 +      * field.c (fw_parse_field): Stop upon hitting the end of the
 +      record; this enables correct counting of the number of fields.
 +      (set_FIELDWIDTHS): Add `*' at end as meaning ``all the rest
 +      of the data on the line.'' Allow skip:* as well.
 +      * NEWS: Update information about FIELDWIDTHS.
 +
 +2017-05-20         Arnold D. Robbins     <address@hidden>
 +
 +      * awkgram.y (add_lint): Make ``no effect'' check smarter about
 +      reporting line numbers.
 +
 +2017-05-01         Arnold D. Robbins     <address@hidden>
 +
 +      * awkgram.y (nextc): Fix to change of 2017-04-24 such that
 +      @include works in multibyte locales. Thanks to Hermann
 +      Peifer for the bug report.
 +
 +2017-04-26         Andrew J. Schorr     <address@hidden>
 +
 +      * awkgram.y (make_regnode): Fix bug -- we should not set valref to 1
 +      when creating a node of type Node_regex, since valref is appropriate
 +      only for Node_val nodes. This fixes a bug introduced in commit
 +      687e6594. Also, add an assert to make it clear that this function
 +      supports only Node_regex and Node_dynregex.
 +      * awk.h (NODE): Restore sref to the `val' subportion, since it is not
 +      really needed for Node_regex, now that the bug in make_regnode has
 +      been fixed.
 +      (valref): Restore macro definition.
 +
 +2017-04-24         Arnold D. Robbins     <address@hidden>
 +
 +      * awk.h (NODE): Additional cleanups. Removed `aq' and `param_list'
 +      elements from various unions and removed 'nextp' and
 +      `a_opaque' defines. None of these were in use.
 +      Rework the comment for valref, per suggestion from
 +      Andrew Schorr.
 +
 +2017-04-23         Arnold D. Robbins     <address@hidden>
 +
 +      * awkgram.y (nextc): Adjust so that 3.1.x behavior is restored
 +      whereby --source arguments are concatenated. Thanks to
 +      "Neil R. Ormos" <address@hidden> for the report.
 +
 +2017-04-21         Arnold D. Robbins     <address@hidden>
 +
 +      * awk.h (NODE): Put the `val' subportion back the way it
 +      was and move valref (formerly sref) out of the unions
 +      entirely. This was the real problem. Rework the corresponding
 +      commentary.
 +      [valref]: Removed the macro definition.
 +
 +2017-04-20         Arnold D. Robbins     <address@hidden>
 +
 +      * configure.ac: Make letter case usage in the various
 +      AC_ARG_ENABLE messages consistent with the rest of configure
 +      output.
 +      (--disable-mpfr): Add this option to make it easier
 +      to check compiles without MPFR. Motivated by:
 +      * awk.h (NODE): Rearrange the layout of the 'val' subportion
 +      of the union to fix alignment problems when compiling without
 +      MPFR.  The problem only happened on 64-bit compiles, not
 +      32-bit compiles.
 +
 +2017-04-16         Arnold D. Robbins     <address@hidden>
 +
 +      * builtin.c (do_intdiv): Use DEREF on the arguments.
 +      Thanks to Andrew Schorr for finding the problem.
 +      * mpfr.c (do_mpfr_intdiv): Return -1 if numerator or denominator
 +      are not valid numbers.  Unref various bits first.
 +
 +2017-04-12         Arnold D. Robbins     <address@hidden>
 +
 +      * mpfr.c (mpg_format_val): Set STRCUR flag when we're done.
 +      Fixes a memory leak. Thanks to valgrind for the report.
 +
 +      * builtin.c (do_dcgettext): Move declaration of reslen to
 +      outside the ifdefs. Thanks to Hermann Peifer for the report.
 +
 +2017-04-12         Manuel Collado        <address@hidden>
 +
 +      Fix the FPAT bug reported by Ed Morton in the gawk-bug mailing list.
 +
 +      * awk.h (Regexp): Remove the non_empty flag.
 +      * field.c (fpat_parse_field): Restructure the code to reduce complexity
 +      and document the new structure.
 +
 +      * field.c (fpat_parse_field): Further restructuring to avoid
 +      invalid reads as reported by valgrind.
 +
 +2017-04-10         Andrew J. Schorr     <address@hidden>
 +
 +      * awk.h (enum opcodeval): For the avoidance of doubt, specify that
 +      Op_illegal must equal zero.
 +      * symbol.c (bcfree): Improve clarity by setting opcode to Op_illegal
 +      instead of 0.
 +      (free_bc_mempool): Improve clarity by comparing opcode to Op_illegal
 +      instead of to 0.
 +
 +      * field.c (set_FIELDWIDTHS): Set use_chars to awk_true, since its
 +      type is awk_bool_t.
 +
 +2017-04-10         Arnold D. Robbins     <address@hidden>
 +
 +      * symbol.c (free_bc_mempool): Change `first' from int to bool.
 +
 +2017-04-09         Andrew J. Schorr     <address@hidden>
 +
 +      * field.c (fw_parse_field): Edit comment about resetting shift state.
 +      * gawkapi.h (awk_fieldwidth_info_t): Make white space more uniform.
 +
 +2017-04-08  Eli Zaretskii  <address@hidden>
 +
 +      * main.c (usage, copyleft) [__MINGW32__]:
 +      * io.c (non_fatal_flush_std_file, close_io) [__MINGW32__]: Call
 +      w32_maybe_set_errno to correctly set errno to EPIPE when appropriate.
 +
 +      * awk.h (die_via_sigpipe) [__MINGW32__]: MinGW-specific definition.
 +
 +2017-04-07         Andrew J. Schorr     <address@hidden>
 +
 +      * awk.h (INSTRUCTION_POOL): Redefine as an array of structures so we
 +      can track allocated blocks.
 +      * symbol.c (pools): Make it a pointer to avoid copying.
 +      (struct instruction_block): Define structure to hold a block of
 +      allocated instructions.
 +      (bcfree): Update to use new INSTRUCTION_POOL definition.
 +      (bcalloc): Allocate an instruction by searching first on the free
 +      list, second for free space in the current block, or third by
 +      allocating a new block.
 +      (set_context): Update to reflect that pools is now a pointer.
 +      (free_bc_mempool): New helper function to free a pool of a certain size.
 +      (fre_bcpool): Call free_bc_mempool for each pool.
 +
 +2017-04-04         Arnold D. Robbins     <address@hidden>
 +
 +      * awk.h (INSTRUCTION): Add pool_size member.
 +      [MAX_INSTRUCTION_ALLOC]: New macro.
 +      (INSTRUCTION_POOL): New type.
 +      (struct context): Use INSTRUCTION_POOL.
 +      * array.c (assoc_list): Reorg the code a bit to make sure
 +      to alway free the INSTRUCTIONs allocated for calling a
 +      user-supplied sorting function. Based on code by
 +      Andrew Schorr.
 +      * symbol.c (free_bcpool): Rework to use an INSTRUCTION_POOL.
 +      (bcfree, bcalloc): Rework to use separate chains in
 +      the instruction pool.
 +      (set_context): Update appropriately.
 +
 +2017-03-27         Arnold D. Robbins     <address@hidden>
 +
 +      * field.c (parse_field_func_t): New typedef. Used as needed.
 +      (fw_parse_field): Edit comment about resetting shift state.
 +      (set_parser): Fix leading comment's style and type of argument.
 +      (set_FIELDWIDTHS): Improve the fatal error message.
 +      * gawkapi.h: Minor edits in some comments.
 +
 +2017-03-27         Arnold D. Robbins     <address@hidden>
 +
 +      Cause EPIPE errors to stdout to generate a real SIGPIPE.
 +
 +      * awk.h (die_via_sigpipe): New macro.
 +      * builtin.c (efwrite): Use it.
 +      * io.c (non_fatal_flush_std_file): Ditto.
 +      * main.c (usage): Ditto.
 +
 +2017-03-25         Arnold D. Robbins     <address@hidden>
 +
 +      * io.c (flush_io): Use r_fatal and r_warning for messagefunc
 +      in the loop.
 +
 +2017-03-24         Arnold D. Robbins     <address@hidden>
 +
 +      * builtin.c (efwrite): Exit successfully upon EPIPE, as SIGPIPE
 +      done. Improve error messages upon failure to write.
 +      (do_fflush): Update ERRNO for non-fatal flush failures.
 +      * io.c (non_fatal_flush_std_file): Update ERRNO when flush is
 +      non-fatal.
 +      (flush_io): If a redirect is marked non-fatal, only warning,
 +      not fatal message.
 +
 +2017-03-23         Arnold D. Robbins     <address@hidden>
 +
 +      * config.sub: Updated again.
 +
 +2017-03-22         Andrew J. Schorr     <address@hidden>
 +
 +      * NEWS: Document new PROCINFO["FS"] value of "API".
 +
 +2017-03-22         Andrew J. Schorr     <address@hidden>
 +
 +      * NEWS: Document new FIELDWIDTHS skip capability and API input parser
 +      field parsing enhancement.
 +
 +2017-03-22         Andrew J. Schorr     <address@hidden>
 +
 +      * gawkapi.h (awk_input_buf_t): Update get_record comment regarding the
 +      new field_width argument.
 +
 +2017-03-21         Andrew J. Schorr     <address@hidden>
 +
 +      * gawkapi.h (awk_fieldwidth_info_t): Define new structure to contain
 +      API field parsing info, replacing the previous awk_input_field_info_t
 +      array.
 +      (awk_fieldwidth_info_size): Define macro to calculate size of the
 +      variable-length awk_fieldwidth_info_t structure.
 +      (awk_input_buf_t): Update get_record prototype to update the type
 +      of the final field_width argument from 'const awk_input_field_info_t **'
 +      to 'const awk_fieldwidth_info_t **'.
 +      * awk.h (set_record): Change 3rd argument from
 +      'const awk_input_field_info_t *' to 'const awk_fieldwidth_info_t *'.
 +      * io.c (inrec, do_getline_redir, do_getline): Change field_width type
 +      from 'const awk_input_field_info_t *' to
 +      'const awk_fieldwidth_info_t *'.
 +      (get_a_record): Change field_width argument type from
 +      'const awk_input_field_info_t **' to 'const awk_fieldwidth_info_t **'.
 +      * field.c (api_parser_override): Define new boolean to track whether
 +      API parsing is currently overriding default parsing behavior.
 +      (api_fw): Change type from 'const awk_input_field_info_t *'
 +      to 'const awk_fieldwidth_info_t *'.
 +      (FIELDWIDTHS): Change type from 'int *' to 'awk_fieldwidth_info_t *'.
 +      (set_record): Use new boolean api_parser_override to track whether
 +      API parsing override is in effect, since we can no longer discern
 +      this from the value of parse_field -- FIELDWIDTHS parsing uses the
 +      same function.
 +      (calc_mbslen): New function to calculate the length of a multi-byte 
 +      string.
 +      (fw_parse_field): Enhance to support the awk_fieldwidth_info_t 
 +      structure instead of simply using an array of integer field widths.
 +      (api_parse_field): Remove function no longer needed since fw_parse_field
 +      now supports both FIELDWIDTHS and API parsing.
 +      (set_parser): Use api_parser_override instead of comparing parse_field
 +      to api_parse_field.
 +      (set_FIELDWIDTHS): Enhance to use new awk_fieldwidth_info_t structure
 +      and parse new skip prefix for each field.
 +      (current_field_sep): Use api_parser_override flag instead of comparing
 +      to api_parse_field.
 +      (current_field_sep_str): Ditto.
 +
 +2017-03-20         Arnold D. Robbins     <address@hidden>
 +
 +      Improve handling of EPIPE. Problems reported by
 +      Alexandre Ferrieux <address@hidden>
 +      and David Kerns <address@hidden>.
 +
 +      * awk.h (ignore_sigpipe, set_sigpipe_to_default,
 +      non_fatal_flush_std): Declare new functions.
 +      (ignore_sigpipe, set_sigpipe_to_default,
 +      non_fatal_flush_std): New macros.
 +      * builtin.c (do_fflush): When nonfatal not in force, flush
 +      of stdout/stderr and EPIPE exits, simulating SIGPIPE, as
 +      in nawk/mawk. Flush of other redirections with EPIPE now
 +      also fatals.
 +      (do_system): Use ignore_sipipe and set_sigpipe_to_default
 +      instead of uglier inline ifdefed code.
 +      * main.c (main): Ditto.
 +      * io.c (redirect_string, two_way_open, gawk_popen): Ditto.
 +      (flush_io): Use non_fatal_flush_std for stdout and stderr.
 +
 +      Unrelated:
 +
 +      * config.guess, config.rpath, config.sub, install-sh:
 +      Sync with GNULIB.
 +
 +2017-03-16         Arnold D. Robbins     <address@hidden>
 +
 +      * configure.ac: Some cleanups.
 +
 +2017-03-09         Andrew J. Schorr     <address@hidden>
 +
 +      * gawkapi.h (awk_input_field_info_t): Define new structure to contain
 +      API field parsing info.
 +      (awk_input_buf_t): Update get_record prototype to use an array of
 +      awk_input_field_info_t instead of integers.
 +      * awk.h (set_record): Change 3rd argument from 'const int *' to
 +      'const awk_input_field_info_t *'.
 +      * field.c (api_fw): Now points to an array of awk_input_field_info_t
 +      instead of integers.
 +      (set_record): Change 3rd argument to point to an array of
 +      awk_input_field_info_t.
 +      (api_parse_field): Update parsing logic to use awk_input_field_info_t
 +      structures instead of an array of integers.
 +      * io.c (inrec, do_getline_redir, do_getline): Change field_width type
 +      from 'const int *' to 'const awk_input_field_info_t *'.
 +      (get_a_record): Change field_width argument type from 'const int **'
 +      to 'const awk_input_field_info_t **'.
 +
 +2017-03-09         Arnold D. Robbins     <address@hidden>
 +
 +      * field.c: Minor style edits.
 +
 +2017-03-06         Andrew J. Schorr     <address@hidden>
 +
 +      * field.c (normal_parse_field): Renamed from save_parse_field to reflect
 +      better its purpose. Added a comment to explain more clearly what's
 +      going on.
 +      (set_record, set_parser): Rename save_parse_field to normal_parse_field.
 +
 +2017-03-06         Andrew J. Schorr     <address@hidden>
 +
 +      * gawkapi.h (awk_input_buf_t): Remove field_width array and instead
 +      add it as a 6th argument to the get_record function. This should
 +      not break existing code, since it's fine to ignore the additional
 +      argument. Document the behavior of the field_width argument.
 +      * io.c (inrec): Pass pointer to field_width array to get_a_record,
 +      and then hand it off to set_record.
 +      (do_getline_redir): If not reading into a variable, pass pointer to
 +      field_width array to get_a_record and then hand it off to set_record.
 +      (do_getline): Ditto.
 +      (get_a_record): Add a 4th field_width argument to pass through to
 +      the API get_record method.
 +
 +2017-03-05         Andrew J. Schorr     <address@hidden>
 +
 +      * awk.h (set_record): Add a new argument containing a field-width
 +      array returned by an API parser.
 +      (field_sep_type): Add new enum value Using_API.
 +      (current_field_sep_str): Declare new function.
 +      * field.c (save_parse_field): New static variable to save the
 +      parse_field value in cases where it's overridden by API parsing.
 +      (api_fw): New static variable to hold pointer to API parser fieldwidth
 +      array.
 +      (set_record): Add new field-width array argument. If present, API
 +      parsing will override the default parsing mechanism.
 +      (api_parse_field): New field parser using field widths supplied by the
 +      API. This is very similar to the existing fw_parse_field function.
 +      (get_field): Fix typo in comment.
 +      (set_parser): New function to set default parser and check whether
 +      there's an API parser override in effect. Update PROCINFO["FS"] if
 +      something has changed.
 +      (set_FIELDWIDTHS): Use set_parser and stop updating PROCINFO["FS"].
 +      (set_FS): Ditto.
 +      (set_FPAT): Ditto.
 +      (current_field_sep): Return Using_API when using the API field parsing
 +      widths.
 +      (current_field_sep_str): New function to return the proper string
 +      value for PROCINFO["FS"].
 +      * gawkapi.h (awk_input_buf_t): Add field_width array to enable the
 +      parser get_record function to supply field widths to override the
 +      default gawk field parsing mechanism.
 +      * io.c (inrec): Pass iop->public.field_width to set_record as the
 +      3rd argument to enable API field parsing overrides.
 +      (do_getline_redir, do_getline): Ditto.
 +      * main.c (load_procinfo): Use new current_field_sep_str function
 +      instead of switching on the return value from current_field_sep.
 +
 +2017-02-23         Arnold D. Robbins     <address@hidden>
 +
 +      * awk.h (boolval): Return bool instead of int.
 +      * eval.c (eval_condition): Same.
 +      * io.c (pty_vs_pipe): Same
 +      Thanks to Andrew Schorr for pointing these out.
 +
 +2017-02-21         Andrew J. Schorr     <address@hidden>
 +
 +      * NEWS: Document that mktime now takes an optional utc-flag argument.
 +      * awkgram.y (tokentab): Modify mktime entry to indicate that it may
 +      accept two arguments.
 +      * builtin.c (mktime_tz): New function to run mktime in an arbitrary
 +      time zone. Code was copied from the Linux timegm man page.
 +      (do_mktime): Add support for new optional 2nd argument utc-flag by
 +      using the new mktime_tz function.
 +      (do_strftime): Change do_gmt type from int to bool.
 +
 +2017-02-17         Arnold D. Robbins     <address@hidden>
 +
 +      * builtin.c (do_typeof): Handle arguments that have
 +      the NULL_FIELD flag set.
 +
 +2017-02-03         Andrew J. Schorr     <address@hidden>
 +
 +      * awkgram.y (set_profile_text): Improve code clarity by using emalloc
 +      to allocate the string instead of abusing estrdup.
 +
 +2017-02-02         Arnold D. Robbins     <address@hidden>
 +
 +      * awkgram.y (set_profile_next): Allocate an extra byte at the
 +      end for the NUL in case we add a sign. Thanks to Andrew Schorr
 +      for making me look at this code.
 +
 +      And later in the same day:
 +
 +      * awkgram.y (set_profile_next): Undo previous change, since estrdup
 +      handles it, but updated the comments.
 +
 +2017-02-01         Arnold D. Robbins     <address@hidden>
 +
 +      * builtin.c (mbc_char_count): Remove spurious multiplies by
 +      gawk_mb_cur_max. Thanks to Andrew Schorr for making me look
 +      at this code.
 +
 +      Unrelated:
 +
 +      * awkgram.y (make_profile_number): Renamed to ...
 +      (set_profile_next): New function. All calls adjusted. Also improved
 +      use at MPFR number case.
 +
 +2017-01-28         Andrew J. Schorr     <address@hidden>
 +
 +      * io.c (inetfile): Replace strncmp with memcmp in a few places, now
 +      that we are checking string length beforehand.
 +
 +2017-01-27         Andrew J. Schorr     <address@hidden>
 +
 +      * io.c (redirect_string): Check explen positive before accessing *str.
 +      In lintwarn message, use explen string length. Pass length to inetfile.
 +      (devopen): Pass name length to inetfile.
 +      Stop assuming that remoteport is NUL-terminated.
 +      (two_way_open): Pass name length to inetfile.
 +      (inetfile): Stop assuming NUL string termination; add checks to avoid 
 +      string overrun.
 +
 +2017-01-27         Andrew J. Schorr     <address@hidden>
 +
 +      * awk.h (str_terminate_f): New helper function for terminating a string
 +      NODE.
 +      (str_terminate): Macro wrapper to call str_terminate_f.
 +      (str_restore): New macro to restore the string.
 +      * builtin.c (do_strftime): Use str_terminate and str_restore.
 +      (do_dcgettext): Ditto, and remove saved_end flag since equivalent
 +      to testing (t2 != NULL). Fix overrun bug in calculating result
 +      length when !ENABLE_NLS.
 +      (do_dcngettext, do_bindtextdomain): Use str_terminate and str_restore.
 +      * interpret.h (Op_arrayfor_init, Op_indirect_func_call): Ditto.
 +      * str_array.c (env_remove): Ditto.
 +
  2017-01-27         Andrew J. Schorr     <address@hidden>
  
        * interpret.h [UNFIELD]: Fix condition for assignment from
diff --cc debug.c
index c3bc300,c727178..1e04e23
--- a/debug.c
+++ b/debug.c
@@@ -270,10 -270,10 +270,10 @@@ static void save_options(const char *fi
  
  /* pager */
  jmp_buf pager_quit_tag;
- bool pager_quit_tag_valid = false;
+ int pager_quit_tag_valid = 0;
  static int screen_width = INT_MAX;    /* no of columns */
  static int screen_height = INT_MAX;   /* no of rows */
 -static int pager_lines_printed = 0;   /* no of lines printed so far */ 
 +static int pager_lines_printed = 0;   /* no of lines printed so far */
  
  static void restart(bool run) ATTRIBUTE_NORETURN;
  static void close_all(void);

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog | 13 +++++++++++++
 awk.h     |  2 +-
 builtin.c |  4 ++--
 cmd.h     |  2 +-
 debug.c   | 12 ++++++------
 msg.c     |  2 +-
 6 files changed, 24 insertions(+), 11 deletions(-)


hooks/post-receive
-- 
gawk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]