1. 15 Sep, 2012 4 commits
    • Paul Eggert's avatar
      Port better to POSIX hosts lacking _setjmp. · 0328b6de
      Paul Eggert authored
      * configure.ac (HAVE__SETJMP, HAVE_SIGSETJMP): New symbols.
      (_setjmp, _longjmp): Remove.
      * src/lisp.h: Include <setjmp.h> here, since we use its symbols here.
      All instances of '#include <setjmp.h>' removed, if the
      only reason for the instance was because "lisp.h" was included.
      (sys_jmp_buf, sys_setjmp, sys_longjmp): New symbols.
      Unless otherwise specified, replace all uses of jmp_buf, _setjmp,
      and _longjmp with the new symbols.  Emacs already uses _setjmp if
      available, so this change affects only POSIXish hosts that have
      sigsetjmp but not _setjmp, such as some versions of Solaris and
      Unixware.  (Also, POSIX-2008 marks _setjmp as obsolescent.)
      * src/image.c (_setjmp, _longjmp) [HAVE_PNG && !HAVE__SETJMP]: New macros.
      (png_load_body) [HAVE_PNG]:
      (PNG_LONGJMP) [HAVE_PNG && PNG_LIBPNG_VER < 10500]:
      (PNG_JMPBUF) [HAVE_PNG && PNG_LIBPNG_VER >= 10500]:
      Use _setjmp and _longjmp rather than sys_setjmp and sys_longjmp,
      since PNG requires jmp_buf.  This is the only exception to the
      general rule that we now use sys_setjmp and sys_longjmp.
      This exception is OK since this code does not change the signal
      mask or longjmp out of a signal handler.
      
      Fixes: debbugs:12446
      0328b6de
    • Glenn Morris's avatar
      Improve vc-bzr-working-revision for lightweight checkouts · 82375160
      Glenn Morris authored
      * lisp/vc/vc-bzr.el (vc-bzr-working-revision): For lightweight local
      checkouts, check the parent dirstate matches the branch.
      Add "--tree" to "bzr revno" arguments.  Don't try to shorten the
      empty string.
      82375160
    • Glenn Morris's avatar
      Tweak previous emacs-bzr-get-version change · fea895b1
      Glenn Morris authored
      fea895b1
    • Glenn Morris's avatar
      Improve emacs-bzr-version for lightweight checkouts (bug#12441) · f40a9709
      Glenn Morris authored
      * lisp/version.el (emacs-bzr-version): Doc fix.
      (emacs-bzr-version-dirstate): New function.
      (emacs-bzr-get-version): For lightweight checkouts, if the parent
      is local try and check that it matches the branch.  If not, just
      use dirstate information.
      f40a9709
  2. 14 Sep, 2012 10 commits
    • Juri Linkov's avatar
      * lisp/dired-aux.el (dired-do-chmod): Use `eq' to detect empty input. · cb26b7f5
      Juri Linkov authored
      Fixes: debbugs:12399
      cb26b7f5
    • Paul Eggert's avatar
      Fix glitches with 'configure --without-sync-input'. · 2af03429
      Paul Eggert authored
      * configure.ac (--without-sync-input): Fix typo in usage message.
      * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT && HAVE_PTHREAD]:
      Include "syssignal.h", for 'main_thread'.
      2af03429
    • Paul Eggert's avatar
      * configure.ac: Port to hosts lacking gtk. · e3141fcf
      Paul Eggert authored
      (PKG_CHECK_MODULES): Capture pkg-config diagnostics
      better, in particular, problems in invoking pkg-config itself.
      This is useful on hosts that don't have pkg-config.
      (GTK_MODULES): Do not exit 'configure' simply because gtk3
      and gtk2 are both missing.  Problem found on Solaris 8.
      e3141fcf
    • Dmitry Antipov's avatar
      Avoid out-of-range marker position (Bug#12426). · 2f294edf
      Dmitry Antipov authored
      * insdel.c (replace_range, replace_range_2): Adjust
      markers before overlays, as suggested by comments.
      (insert_1_both, insert_from_buffer_1, adjust_after_replace):
      Remove redundant check before calling offset_intervals.
      2f294edf
    • Stefan Monnier's avatar
    • Glenn Morris's avatar
      Auto-commit of generated files. · 33bd7ff0
      Glenn Morris authored
      33bd7ff0
    • Martin Rudalics's avatar
      In Fformat_mode_line always save/restore current buffer. (Bug#12387) · 6b533e9c
      Martin Rudalics authored
      * xdisp.c (Fformat_mode_line): Unconditionally save/restore current
      buffer.  (Bug#12387)
      6b533e9c
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el: Miscellaneous cleanup. · 2de39f08
      Stefan Monnier authored
      Remove obsolete byte-compiler hack that tried to silence some warnings.
      (edebug-submit-bug-report): Remove.
      (edebug-get-buffer-window, edebug-sit-for, edebug-input-pending-p):
      Remove aliases, use the un-prefixed name instead.
      (edebug-pop-to-buffer): Consider other frames.
      (edebug-original-read):: Make it more obvious that it's always defined.
      (edebug--make-form-data-entry, edebug--form-data-name)
      (edebug--form-data-begin, edebug--form-data-end): Rename from the
      single-dashed name, and implement with cl-defstruct.
      (edebug-set-form-data-entry): Use the standard accessors.
      (edebug-make-top-form-data-entry): Use push.
      (edebug-no-match): Drop useless `funcall'.
      (mapcar, mapconcat, mapatoms, apply, funcall): Don't add debug specs
      to functions.
      (defsubst, dont-compile, eval-when-compile, eval-and-compile)
      (delay-mode-hooks, with-temp-file, with-temp-message, ad-dolist)
      (with-syntax-table, push, pop, 1value, noreturn, defadvice)
      (easy-menu-define, with-custom-print): Remove redundant specs.
      (edebug-outside-overriding-local-map)
      (edebug-outside-overriding-terminal-local-map): Remove, unused.
      (edebug--display): Bind unread-command-events directly to nil rather
      than binding it to unread-command-events and later setting it to nil.
      (edebug--display): Kill edebug-eval-buffer here...
      (edebug--recursive-edit): ...rather than here.
      Bind standard-output and standard-input.
      (edebug-eval): Check cl-macroexpand-all is fboundp.
      (edebug-temp-display-freq-count): Fix last change.
      
      * lisp/emacs-lisp/easymenu.el (easy-menu-define): Add `debug' spec.
      * lisp/subr.el (noreturn, 1value): Add `debug' spec.
      * lisp/emacs-lisp/advice.el: Require cl-lib.
      (ad-copy-tree): Remove, use copy-tree instead.
      (ad-dolist): Remove use dolist or cl-dolist instead.
      (ad-do-return): Remove, use cl-return instead.
      (defadvice): Add `debug' spec.
      2de39f08
    • Juanma Barranquero's avatar
    • Juanma Barranquero's avatar
      nt/config.nt: Sync with autogen/config.in. · fe597931
      Juanma Barranquero authored
      (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGIO, BROKEN_SIGPOLL)
      (BROKEN_SIGPTY, HAVE_CBRT, HAVE_LOGB, NO_TERMIO): Remove.
      (USABLE_FIONREAD, USABLE_SIGIO): New macros.
      fe597931
  3. 13 Sep, 2012 20 commits
    • Juri Linkov's avatar
      * lisp/dired-aux.el (dired-do-chxxx): Use `eq' to detect empty input. · 5b68b333
      Juri Linkov authored
      Fixes: debbugs:12399
      5b68b333
    • Glenn Morris's avatar
      Update some function declarations · 6a2e6868
      Glenn Morris authored
      * lisp/calc/calc-ext.el (math-compose-expr):
      * lisp/calc/calc.el (math-compose-expr):
      * lisp/progmodes/cc-defs.el (cl-macroexpand-all):
      * lisp/progmodes/cc-langs.el (delete-duplicates, mapcan)
      (cl-macroexpand-all): Update declarations.
      6a2e6868
    • Glenn Morris's avatar
      * lisp/vc/vc.el: No need to require ediff. · b9800ec4
      Glenn Morris authored
      (ediff-load-version-control): Declare.
      (ediff-vc-internal): Fix declaration.
      (vc-version-ediff): Require ediff.
      b9800ec4
    • Paul Eggert's avatar
      Use a more backwards-compatible timer format. · c18e885b
      Paul Eggert authored
      * etc/NEWS: Document it.
      * lisp/emacs-lisp/timer.el (timer): PSECS is now at the end, rather than
      being right after USECS, as that better supports old code that
      inadvisedly looked directly at the timer vector.
      * src/keyboard.c (decode_timer): Get PSECS from the 8th (origin-0)
      vector element, not from the 4th, since PSECS is now at the end.
      (Fcurrent_idle_time): Doc fix.
      
      Fixes: debbugs:12430
      c18e885b
    • Kenichi Handa's avatar
      language/chinese.el ("Chinese-GB", "Chinese-BIG5", "Chinese-CNS",... · d607d303
      Kenichi Handa authored
      language/chinese.el ("Chinese-GB", "Chinese-BIG5", "Chinese-CNS", "Chinese-EUC-TW"): Add chinese-gbk to	coding-priority property of these language environment.
      d607d303
    • Jan Djärv's avatar
      * configure.ac: Report Gtk+ 3 as GTK. · 4d0b77fc
      Jan Djärv authored
      4d0b77fc
    • Juanma Barranquero's avatar
      Fix typos in ChangeLogs. · fc0c31f8
      Juanma Barranquero authored
      fc0c31f8
    • Katsumi Yamaoka's avatar
      gnus-art.el (gnus-article-stop-animations): Use gnus-timer--function that is... · 5e2b4ce1
      Katsumi Yamaoka authored
      gnus-art.el (gnus-article-stop-animations): Use gnus-timer--function that is an alias to timer--function
      5e2b4ce1
    • Glenn Morris's avatar
      Auto-commit of generated files. · 4fa92495
      Glenn Morris authored
      4fa92495
    • Paul Eggert's avatar
      * texinfo.tex: Merge from gnulib. · 5087f097
      Paul Eggert authored
      5087f097
    • Jan Djärv's avatar
      * configure.ac: Reorder Xaw3d messages. · 2c484e75
      Jan Djärv authored
      2c484e75
    • Jan Djärv's avatar
    • Paul Eggert's avatar
      Fix glitches caused by addition of psec to timers. · 72eac303
      Paul Eggert authored
      * etc/NEWS: Document timer format change.
      * lisp/image.el (image-animate-timer):
      * lisp/time.el (display-time-world-timer):
      Use timer--function and timer--args rather than raw access to
      timer vector.
      * lisp/gnus/gnus-art.el (gnus-article-stop-animations):
      Use timer--function rather than raw access to timer vector.
      
      Fixes: debbugs:12430
      72eac303
    • Dmitry Antipov's avatar
      Function to mark objects and remove killed buffers at once. · d59a1afb
      Dmitry Antipov authored
      * alloc.c (discard_killed_buffers): Rename to ...
      (mark_discard_killed buffers) ... new name.  Add marking
      of remaining objects.  Fix comment.  Adjust users.
      (mark_object): Do not touch frame buffer lists here.
      * frame.c (delete_frame): Reset frame buffer lists here.
      d59a1afb
    • Paul Eggert's avatar
      Better workaround for GNOME bug when --enable-gcc-warnings. · 8ea47e3a
      Paul Eggert authored
      * emacsgtkfixed.c (G_STATIC_ASSERT): Remove, undoing last change.
      Instead, disable -Wunused-local-typedefs.  See Dmitry Antipov in
      <http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00335.html>.
      8ea47e3a
    • Glenn Morris's avatar
      byte-compile-warning-prefix tweak · 2168fe4f
      Glenn Morris authored
      * lisp/emacs-lisp/bytecomp.el (byte-compile-warning-prefix): If not
      compiling a file, try using load-file-name.
      2168fe4f
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el (edebug-outside-unread-command-events): · c0c54fbd
      Stefan Monnier authored
      Fix last change.
      (edebug-update-eval-list): Use `push'.
      c0c54fbd
    • Paul Eggert's avatar
      Simplify SIGIO usage. · 4a4bbad2
      Paul Eggert authored
      The code that dealt with SIGIO was crufty and confusing, e.g., it
      played tricks like "#undef SIGIO" but these tricks were not used
      consistently.  Simplify mostly by not #undeffing standard symbols,
      e.g., use "defined USABLE_SIGIO" (our symbol, which we can define
      or not as we please) rather than "defined SIGIO" (standard symbol
      that we probably shouldn't #undef).
      * configure.ac (NO_TERMIO, BROKEN_FIONREAD, BROKEN_SIGAIO)
      (BROKEN_SIGPOLL, BROKEN_SIGPTY): Remove.
      (USABLE_FIONREAD, USABLE_SIGIO): New symbols.  All uses of
      'defined SIGIO' replaced with 'defined USABLE_SIGIO', with no need
      to #undef SIGIO now (which was error-prone).  Likewise, all uses
      of 'defined FIONREAD' replaced with 'defined USABLE_FIONREAD'.
      * src/admin/CPP_DEFINES (BROKEN_SIGAIO, BROKEN_SIGIO, BROKEN_SIGPOLL)
      (BROKEN_SIGPTY, NO_TERMIO): Remove.
      * src/conf_post.h [USG5_4]: Do not include <sys/wait.h> here.
      Modules that need it can include it.
      [USG5_4 && emacs]: Likewise, do not include the streams stuff here.
      * src/dispextern.h (ignore_sigio): New decl.
      * src/emacs.c (shut_down_emacs): Invoke unrequest_sigio
      unconditionally, since it's now a no-op if !USABLE_SIGIO.
      * src/emacs.c (shut_down_emacs):
      * src/keyboard.c (kbd_buffer_store_event_hold):
      Use ignore_sigio rather than invoking 'signal' directly.
      * src/keyboard.c (USABLE_FIONREAD && USG5_4): Include <sys/filio.h>,
      for FIONREAD.
      (FIONREAD, SIGIO): Do not #undef.
      (tty_read_avail_input): Use #error rather than a syntax error.
      * src/process.c [USG5_4]: Include <sys/stream.h> and <sys/stropts.h>,
      for I_PIPE, used by SETUP_SLAVE_PTY.
      (DATAGRAM_SOCKETS): Simplify defn, based on USABLE_FIONREAD.
      * src/sysdep.c (croak): Remove; no longer needed.  This bit of
      temporary code, with Fred N. Fish's comment that it's temporary,
      has been in Emacs since at least 1992!
      (init_sigio, reset_sigio, request_sigio, unrequest_sigio):
      Arrange for them to be no-ops in all cases when ! USABLE_SIGIO.
      * src/syssignal.h (croak): Remove decl.
      (SIGIO, SIGPOO, SIGAIO, SIGPTY): Do not #undef; that's too fragile.
      * src/systty.h [!NO_TERMIO]: Do not include <termio.h>; no longer needed
      now that we're termios-only.
      (FIONREAD, ASYNC) [BROKEN_FIONREAD]: Do not #undef.
      * src/term.c (dissociate_if_controlling_tty): Use #error rather than
      a run-time error.
      
      Fixes: debbugs:12408
      4a4bbad2
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el: Use lexical-binding. · bd8d6108
      Stefan Monnier authored
      Remove the "edebug-" prefix from non-dynamically-scoped variables.
      Mark unused args with underscore.
      (edebug-save-restriction, edebug-outside-excursion): Use `declare'.
      (edebug-form-data): Use defvar-local.
      (edebug-make-before-and-after-form, edebug-make-after-form):
      Use backquote.
      (edebug-args, edebug-value, edebug-after-index, edebug-arg-mode):
      Not dynamically scoped any more.
      (edebug--enter-trace): Add arguments `function' and `args'.
      Rename from edebug-enter-trace.
      (edebug-enter): Call it accordingly.  Bind edebug-function explicitly.
      (edebug--update-coverage): Add `after-index' and `value' args.
      Rename from edebug-update-coverage.
      (edebug-slow-after): Call it accordingly.
      (edebug--recursive-edit): Add arg `arg-mode'.  Rename from
      edebug-recursive-edit.
      (edebug--display): Call it accordingly.  Add args `value',
      `offset-index', and `arg-mode'.  Rename from edebug-display.
      (edebug-debugger, edebug): Call it accordingly.
      (edebug-eval-display-list): Use dolist.
      bd8d6108
    • Paul Eggert's avatar
      Work around GCC and GNOME bugs when --enable-gcc-warnings. · 5f0cb45a
      Paul Eggert authored
      * emacsgtkfixed.c (G_STATIC_ASSERT): Redefine to use 'verify',
      to work around GNOME bug 683906.
      * image.c (jpeg_load_body) [HAVE_JPEG && lint]: Pacify gcc -Wclobber.
      (struct my_jpeg_error_mgr) [HAVE_JPEG && lint]: New member fp.
      This works around GCC bug 54561.
      5f0cb45a
  4. 12 Sep, 2012 6 commits
    • Paul Eggert's avatar
      More fixes for 'volatile' and setjmp/longjmp. · 40bce90b
      Paul Eggert authored
      * eval.c (Fdefvar, Fcondition_case): Remove unnecessary 'volatile's.
      * image.c (struct png_load_context) [HAVE_PNG]: New type.
      (png_load_body) [HAVE_PNG]:
      (jpeg_load_body) [HAVE_JPEG]:
      New function, with most of the old parent function's body.
      (png_load) [HAVE_PNG]:
      (jpeg_load) [HAVE_JPEG]:
      Invoke the new function, to avoid longjmp munging our locals.
      (struct my_jpeg_error_mgr) [HAVE_JPEG]: New members cinfo, failure_code.
      (my_error_exit) [HAVE_JPEG]: Don't trust 'setjmp' to return 2 when
      longjmp is passed 2, as the C standard doesn't guarantee this.
      Instead, store the failure code into mgr->failure_code.
      40bce90b
    • Juri Linkov's avatar
      Use Isearch lax whitespace mode in Info. · a9f9d9de
      Juri Linkov authored
      http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00811.html
      
      * lisp/info.el (Info-search): Don't check for isearch-mode and
      isearch-regexp before let-binding search-spaces-regexp to
      Info-search-whitespace-regexp.
      (Info-isearch-search): Let-bind Info-search-whitespace-regexp to
      search-whitespace-regexp if isearch-lax-whitespace or
      isearch-regexp-lax-whitespace is non-nil.
      (Info-mode): Don't set local variable search-whitespace-regexp.
      a9f9d9de
    • Jan Djärv's avatar
      * configure.ac: No --with-x-toolkit given: Try gtk3 toolkit first · d673aedc
      Jan Djärv authored
      and then gtk2 if not found.
      --with-x-toolkit=gtk|yes: As above, but fail if gtk2 or gt3 not found.
      --with-x-toolkit=gtk2: Only try gtk2, fail if not found.
      --with-x-toolkit=gtk3: Only try gtk3, fail if not found.
      d673aedc
    • Stefan Monnier's avatar
      Remove unread-command-char. · bfeae2cf
      Stefan Monnier authored
      * src/keyboard.c (read_char, requeued_events_pending_p, Finput_pending_p)
      (Fdiscard_input, quit_throw_to_read_char, init_keyboard)
      (syms_of_keyboard): Remove support for unread-command-char.
      * lisp/emacs-lisp/debug.el (debugger-outer-unread-command-char, debug)
      (debugger-env-macro): Remove support for unread-command-char.
      
      * lisp/ehelp.el (with-electric-help): Accept functions in
      electric-help-form-to-execute.
      (electric-help-execute-extended, electric-help-ctrl-x-prefix): Use it.
      And replace unread-command-char -> unread-command-events.
      
      * lisp/subr.el (set-temporary-overlay-map): Minimize slightly the impact of
      the temporary map re-appearing on emulation-mode-map-alists.
      
      * lisp/emacs-lisp/edebug.el (def-edebug-form-spec): Remove, it's been broken
      since 22.1.
      bfeae2cf
    • Eli Zaretskii's avatar
      Fix silent exit upon assertion violation on MS-Windows. · 8099e36b
      Eli Zaretskii authored
       src/w32proc.c (sys_kill): If PID is our process ID and the signal is
       SIGABRT, call emacs_abort.  Avoids silently exiting upon assertion
       violation.  (Bug#12426)
      8099e36b
    • Michael Albinus's avatar
      Sync with Tramp 2.2.6. · 20121a26
      Michael Albinus authored
      * tramp.texi (Bug Reports): Cleanup caches before a test run.
      
      * trampver.texi: Update release number.
      20121a26