1. 13 Sep, 2012 2 commits
    • 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
  2. 12 Sep, 2012 13 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
    • Michael Albinus's avatar
      Sync with Tramp 2.2.6. · fbbcaf1b
      Michael Albinus authored
      * net/tramp.el (tramp-accept-process-output): Don't use
      JUST-THIS-ONE in the XEmacs case.
      
      * net/trampver.el: Update release number.
      fbbcaf1b
    • Glenn Morris's avatar
      e210dac4
    • Martin Rudalics's avatar
      Try to keep height of debugger window consistent. (Bug#8789) · 4dece104
      Martin Rudalics authored
      * emacs-lisp/debug.el (debugger-previous-window-height): New
      variable.
      (debug): When debugger-jumping-flag is non-nil try to restore
      height of debugger window.  (Bug#8789)
      4dece104
    • Paul Eggert's avatar
    • Paul Eggert's avatar
      * texinfo.tex: Merge from gnulib. · 44677e30
      Paul Eggert authored
      44677e30
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/edebug.el (edebug-enter): Don't mess with · 60c49c0f
      Stefan Monnier authored
      overriding-local-map and pre/post-command-hook here.
      (edebug-recursive-edit): Do it here instead.
      (edebug-outside-unread-command-char): Remove all uses of
      unread-command-char.
      
      Fixes: debbugs:12345
      60c49c0f
    • Stefan Monnier's avatar
      * src/eval.c: Add `inhibit-debugger'. · 45b82ad0
      Stefan Monnier authored
      (Qinhibit_debugger): New symbol.
      (call_debugger): Bind it instead of Qdebug_on_error.
      (maybe_call_debugger): Test Vinhibit_debugger.
      (syms_of_eval): Define inhibit-debugger.
      * src/xdisp.c (set_message): Don't bind Qinhibit_debug_on_message.
      (syms_of_xdisp): Remove inhibit-debug-on-message.
      * lisp/emacs-lisp/debug.el (debug): Don't bind debug-on-error since
      inhibit-debugger is bound instead.
      45b82ad0
  3. 11 Sep, 2012 16 commits
    • Paul Eggert's avatar
      Avoid _setjmp/_longjmp problems with local nonvolatile variables. · 50f2e553
      Paul Eggert authored
      If a nonvolatile local variable is written before a _longjmp to
      the frame containing the variable, and is read after the _longjmp,
      the value read is indeterminate.  Some local variables of type
      'struct handler' and 'struct catchtag' are used in this way, so
      mark each of their slots as volatile if the slot can be set before
      _longjmp and read afterwards.
      * lisp.h (struct handler): var and chosen_clause are now volatile.
      (struct catchtag): val, next, and pdlcount are now volatile.
      50f2e553
    • Paul Eggert's avatar
      Prefer assignment to memcpy when either will do. · ae1d87e2
      Paul Eggert authored
      * lib-src/pop.c (socket_connection) [HAVE_GETADDRINFO]:
      * src/bidi.c (bidi_push_it, bidi_pop_it):
      * src/fns.c (copy_hash_table):
      * src/image.c (define_image_type):
      * src/keyboard.c (kbd_buffer_store_event_hold):
      * src/process.c (Fprocess_send_eof):
      * src/xfaces.c (x_create_gc) [HAVE_NS]:
      * src/xgselect.c (xg_select):
      Use assignment, not memcpy, as either will do here, and assignment is
      more likely to catch type errors.
      ae1d87e2
    • Paul Eggert's avatar
      * alloc.c (discard_killed_buffers): Tune and simplify a bit. · 5779a1dc
      Paul Eggert authored
      Use pointer-to-a-pointer to simplify and avoid a NILP check each
      time an item is removed.  No need to mark this function 'inline';
      the compiler knows better than we do.
      5779a1dc
    • Bastien Guerry's avatar
      9011078f
    • Jan Djärv's avatar
      * nsterm.h: Add delay parameter to updateFrameSize. · c4c9756b
      Jan Djärv authored
      * nsterm.m (ns_judge_scroll_bars): Pass NO to updateFrameSize.
      (updateFrameSize:): Add delay parameter to updateFrameSize, send it
      to change_frame_size.
      (windowDidResize:): Pass YES to updateFrameSize.
      
      Fixes: debbugs:12388
      c4c9756b
    • Bastien Guerry's avatar
      * subr.el (set-temporary-overlay-map): Add a docstring. (bug#12346) · baa26ea0
      Bastien Guerry authored
      Bug #12346 is not closed as this commit does not document
      `set-temporary-overlay-map' in the manual.
      baa26ea0
    • Dmitry Antipov's avatar
      Discard killed buffers from deleted window and frame objects. · d73e321c
      Dmitry Antipov authored
      This reduces an amount of references to killed buffers and
      helps GC to reclaim them faster.
      * alloc.c (discard_killed_buffers): New function.
      (mark_object): Use it for deleted windows and frames.
      (mark_object): If symbol's value is set up for a killed buffer
      or deleted frame, restore it's global binding.
      * data.c (swap_in_global_binding): Add GC notice.
      (swap_in_symval_forwarding): Use convenient set_blv_where.
      * window.c (wset_next_buffers, wset_prev_buffers): Move ...
      * window.h: ... to here.
      d73e321c
    • Bastien Guerry's avatar
    • Bastien Guerry's avatar
    • Glenn Morris's avatar
      Auto-commit of generated files. · 2c98a625
      Glenn Morris authored
      2c98a625
    • Julien Danjou's avatar
      gnus-notifications.el: add nil checks · 95729d50
      Julien Danjou authored
      95729d50
    • Glenn Morris's avatar
      Be more explicit about some Makefile dependencies · 9d9edd4b
      Glenn Morris authored
      * Makefile.in (install-arch-dep, install-arch-indep, install-doc):
      Be more explicit about dependencies, for parallel `make install'.
      
      It is not so unreasonable to run `make -j# install' from a clean state
      for a self-contained NS build, where the "installation" happens within
      the build tree.
      9d9edd4b
    • Dmitry Antipov's avatar
      Convenient macro to check whether the buffer is live. · e578f381
      Dmitry Antipov authored
      * buffer.h (BUFFER_LIVE_P): New macro.
      * alloc.c, buffer.c, editfns.c, insdel.c, lread.c, marker.c:
      * minibuf.c, print.c, process.c, window.c, xdisp.c: Use it.
      e578f381
    • YAMAMOTO Mitsuharu's avatar
      Fix wrong overhang display for gstring compositions (Bug#12364). · 3057e615
      YAMAMOTO Mitsuharu authored
      * xdisp.c (right_overwritten, right_overwriting): Also handle gstring
      composition cases (Bug#12364).
      
      * xterm.c (x_draw_glyph_string): Avoid overwriting inverted left
      overhang of succeeding glyphs overlapping box cursor.
      
      * w32term.c (x_draw_glyph_string): Likewise.
      3057e615
    • Paul Eggert's avatar
      Simplify, document, and port floating-point. · c990426a
      Paul Eggert authored
      The porting part of this patch fixes bugs on non-IEEE platforms
      with frexp, ldexp, logb.
      * admin/CPP-DEFINES (HAVE_CBRT, HAVE_LOGB, logb): Remove.
      * configure.ac (logb, cbrt): Do not check for these functions,
      as they are not being used.
      * doc/lispref/numbers.texi (Float Basics, Arithmetic Operations, Math Functions):
      Document that / and mod (with floating point arguments), along
      with asin, acos, log, log10, expt and sqrt, return special values
      instead of signaling exceptions.
      (Float Basics): Document that logb operates on the absolute value
      of its argument.
      (Math Functions): Document that (log ARG BASE) also returns NaN if
      BASE is negative.  Document that (expt X Y) returns NaN if X is a
      finite negative number and Y a finite non-integer.
      * etc/NEWS: Document NaNs versus signaling-error change.
      * src/data.c, src/lisp.h (Qdomain_error, Qsingularity_error, Qunderflow_error):
      Now static.
      * src/floatfns.c: Simplify discussion of functions that Emacs doesn't
      support, by removing commented-out code and briefly listing the
      C89 functions excluded.  The commented-out stuff was confusing
      maintenance, e.g., we thought we needed cbrt but it was commented out.
      (logb): Remove decl; no longer needed.
      (isfinite): New macro, if not already supplied.
      (isnan): Don't replace any existing macro.
      (Ffrexp, Fldexp): Define even if !HAVE_COPYSIGN, as frexp and ldexp
      are present on all C89 platforms.
      (Ffrexp): Do not special-case zero, as frexp does the right thing
      for that case.
      (Flogb): Do not use logb, as it doesn't have the desired meaning
      on hosts that use non-base-2 floating point.  Instead, stick with
      frexp, which is C89 anyway.  Do not pass an infinity or a NaN to
      frexp, to avoid getting an unspecified result.
      c990426a
    • Paul Eggert's avatar
      6fda35f2
  4. 10 Sep, 2012 9 commits