1. 09 Feb, 2015 6 commits
    • Paul Eggert's avatar
      Use C99's INFINITY and NAN macros · 2f700871
      Paul Eggert authored
      * lread.c: Include <math.h>.
      (string_to_number): Use INFINITY and NAN rather than rolling our own.
      This avoids some runtime diagnostics when building with
      gcc -fsanitize=undefined.
      2f700871
    • Paul Eggert's avatar
      Fix bidi_explicit_dir_char undefined behavior · 23717173
      Paul Eggert authored
      * bidi.c (bidi_explicit_dir_char): Avoid subscript error when
      argument is BIDI_EOB.  This can happen in bidi_level_of_next_char.
      23717173
    • Leo Liu's avatar
      Add macro pcase-lambda · 751adc4b
      Leo Liu authored
      Fixes: debbugs:19814
      
      * emacs-lisp/lisp-mode.el (el-kws-re): Include `pcase-lambda'.
      
      * emacs-lisp/macroexp.el (macroexp-parse-body): New function.
      
      * emacs-lisp/pcase.el (pcase-lambda): New Macro.
      751adc4b
    • Paul Eggert's avatar
      Better distinguish infinite from invalid times · fd6f7d14
      Paul Eggert authored
      * editfns.c (check_time_validity): New function.
      (decode_time_components): Return int, not bool.
      Return -1 (not 0) if the time is out of range.
      All callers changed.
      (lisp_time_struct, lisp_seconds_argument): Distinguish better
      between time overflow and invalid time values.
      fd6f7d14
    • Paul Eggert's avatar
      db3fc07c
    • Paul Eggert's avatar
      Port to platforms lacking test -a and -o · 5c20aa74
      Paul Eggert authored
      * configure.ac (HAVE_LIBXML2):
      * lisp/Makefile.in (compile-clean):
      * lisp/net/tramp-sh.el (tramp-find-executable):
      Prefer '&&' and '||' to 'test -a' and 'test -o'.
      5c20aa74
  2. 08 Feb, 2015 12 commits
  3. 07 Feb, 2015 7 commits
    • Fabián Ezequiel Gallina's avatar
      b480a6ad
    • Fabián Ezequiel Gallina's avatar
      python.el: Keep eldoc visible while typing args. · 2155973e
      Fabián Ezequiel Gallina authored
      Fixes: debbugs:19637
      
      * lisp/progmodes/python.el (python-eldoc--get-symbol-at-point): New
      function.
      (python-eldoc--get-doc-at-point, python-eldoc-at-point): Use it.
      
      * test/automated/python-tests.el
      (python-eldoc--get-symbol-at-point-1)
      (python-eldoc--get-symbol-at-point-2)
      (python-eldoc--get-symbol-at-point-3)
      (python-eldoc--get-symbol-at-point-4): New tests.
      2155973e
    • Fabián Ezequiel Gallina's avatar
      Fix hideshow integration. · 2d467a0f
      Fabián Ezequiel Gallina authored
      Fixes: debbugs:19761
      
      * lisp/progmodes/python.el
      (python-hideshow-forward-sexp-function): New function based on
      Carlos Pita <carlosjosepita@gmail.com> patch.
      (python-mode): Make `hs-special-modes-alist` use it and initialize
      the end regexp with the empty string to avoid skipping parens.
      
      * test/automated/python-tests.el
      (python-tests-visible-string): New function.
      (python-parens-electric-indent-1)
      (python-triple-quote-pairing): Fix indentation, move require calls.
      (python-hideshow-hide-levels-1)
      (python-hideshow-hide-levels-2): New tests.
      2d467a0f
    • Fabián Ezequiel Gallina's avatar
      * lisp/progmodes/python.el (python-check-custom-command): Do not use · 86c50b9a
      Fabián Ezequiel Gallina authored
      defvar-local for compat with Emacs<24.3.
      86c50b9a
    • Martin Rudalics's avatar
      Try to improve handling of fullwidth/-height frames. · d1655783
      Martin Rudalics authored
      * frame.el (frame-notice-user-settings): Update
      `frame-size-history'.
      (make-frame): Update `frame-size-history'.  Call
      `frame-after-make-frame'.
      * faces.el (face-set-after-frame-default): Remove call to
      frame-can-run-window-configuration-change-hook.
      * frame.c (frame_size_history_add): New function.
      (frame_inhibit_resize): Consider frame_inhibit_implied_resize
      only after frame's after_make_frame slot is true.  Inhibit
      resizing fullwidth-/height frames in one direction only.  Update
      frame_size_history.
      (adjust_frame_size): Call frame_size_history_add.
      (make_frame): Initalize after_make_frame slot.
      (Fmake_terminal_frame): Adjust adjust_frame_size call.
      (Fcan_run_window_configuration_change_hook): Rename to
      Fframe_after_make_frame.  Set after_make_frame slot.  Return
      second argument.
      (x_set_frame_parameters): Postpone handling fullscreen parameter
      until after width and height parameters have been set.  Apply
      width and height changes only if can_x_set_window_size is true.
      Update frame_size_history.
      (Qadjust_frame_size_1, Qadjust_frame_size_2)
      (Qadjust_frame_size_3, QEmacsFrameResize, Qframe_inhibit_resize)
      (Qx_set_fullscreen, Qx_check_fullscreen, Qx_set_window_size_1)
      (Qxg_frame_resized, Qxg_frame_set_char_size_1)
      (Qxg_frame_set_char_size_2, Qxg_frame_set_char_size_3)
      (Qxg_change_toolbar_position, Qx_net_wm_state)
      (Qx_handle_net_wm_state, Qtb_size_cb, Qupdate_frame_tool_bar)
      (Qfree_frame_tool_bar): New symbol for updating
      frame_size_history.
      (Qtip_frame, Qterminal_frame): New symbols.
      (Vframe_adjust_size_history): Rename to frame_size_history.
      * frame.h (struct frame): Rename
      can_run_window_configuration_change_hook slot to
      after_make_frame.
      (frame_size_history_add): Extern.
      * gtkutil.c (xg_frame_resized): Call frame_size_history_add.
      Don't set FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT here.
      (xg_frame_set_char_size): Try to preserve the status of
      fullwidth/-height frames.  Call frame_size_history_add.
      (tb_size_cb, update_frame_tool_bar, free_frame_tool_bar)
      (xg_change_toolbar_position): Call frame_size_history_add.
      * w32fns.c (x_change_tool_bar_height): Handle frame's fullscreen
      status.
      (Fx_create_frame): Process fullscreen parameter after frame has
      been resized.
      (x_create_tip_frame): Pass Qtip_frame to adjust_frame_size.
      (Fx_frame_geometry): Don't pollute pure storage.
      * w32term.c (w32_read_socket): For WM_WINDOWPOSCHANGED,
      WM_ACTIVATE and WM_ACTIVATEAPP set frame's visibility before
      calling w32fullscreen_hook.  For WM_DISPLAYCHANGE call
      w32fullscreen_hook immediately.
      (x_fullscreen_adjust, x_check_fullscreen): Remove.
      (w32fullscreen_hook): Call change_frame_size just as with a
      "normal" frame resize operation.  Call do_pending_window_change.
      (x_set_window_size): Try to handle fullwidth and fullheight more
      accurately.  Don't rely on w32_enable_frame_resize_hack.
      (w32_enable_frame_resize_hack): Remove variable.
      * widget.c (EmacsFrameResize): Remove dead code.  Call
      frame_size_history_add
      * window.c (run_window_configuration_change_hook): Check
      f->after_make_frame instead of
      f->can_run_window_configuration_change_hook.
      * xfns.c (x_change_tool_bar_height): Handle frame's fullscreen status.
      (Fx_create_frame): Process fullscreen parameter after frame has
      been resized.
      (Fx_frame_geometry): Don't pollute pure storage.
      * xterm.c (x_net_wm_state, x_handle_net_wm_state): Call
      frame_size_history_add.
      (do_ewmh_fullscreen): Handle x_frame_normalize_before_maximize.
      (x_check_fullscreen): Count in menubar when calling
      XResizeWindow.  Wait for ConfigureNotify event.  Call
      frame_size_history_add.
      (x_set_window_size_1): Remove PIXELWISE argument.  Try to handle
      changing a fullheight frame's width or a fullwidth frame's
      height.  Call frame_size_history_add.
      (x_set_window_size): Simplify xg_frame_set_char_size and
      x_set_window_size_1 calls.
      (x_frame_normalize_before_maximize): New variable.
      d1655783
    • Paul Eggert's avatar
      Remove no-longer-used cursor_in_echo_area code · cf498e5b
      Paul Eggert authored
      * dispnew.c (set_window_cursor_after_update, update_frame_1):
      Remove checks for negative cursor_in_echo_area, since this var is
      a boolean, and has been a boolean for some time.  Simplify.
      * dispnew.c (init_display):
      * xdisp.c (message3_nolog, vmessage): Use bool for boolean.
      cf498e5b
    • Dmitry Gutov's avatar
      Make vc-test-svn03-working-revision pass · 66e63985
      Dmitry Gutov authored
      * test/automated/vc-tests.el (vc-test--working-revision): Fix
      `vc-working-revision' checks to be compared against nil, which is
      what is should return for unregistered files.
      66e63985
  4. 06 Feb, 2015 10 commits
  5. 05 Feb, 2015 5 commits