1. 06 Nov, 2012 3 commits
    • Dmitry Antipov's avatar
      Widely used frame validity and checking functions. · d9f07150
      Dmitry Antipov authored
      * frame.h (decode_live_frame, decode_any_frame): Add prototypes.
      * frame.c (decode_live_frame, decode_any_frame): New functions.
      (delete_frame, Fredirect_frame_focus, Fframe_parameters)
      (Fframe_parameter, Fframe_char_height, Fframe_char_width)
      (Fframe_pixel_height, Fframe_pixel_width, Ftool_bar_pixel_width)
      (Fframe_pointer_visible_p): Use decode_any_frame.
      (Fmake_frame_visible, Fmake_frame_invisible, Ficonify_frame)
      (Fraise_frame, Flower_frame, Fmodify_frame_parameters)
      (Fset_frame_height, Fset_frame_width): Use decode_live_frame.
      (Fframe_focus): Likewise.  Allow zero number of arguments.
      Adjust docstring.
      (frame_buffer_list, frame_buffer_predicate): Remove.
      * lisp.h (frame_buffer_predicate): Remove prototype.
      * buffer.c (Fother_buffer): Use decode_any_frame.
      * xdisp.c (Ftool_bar_lines_needed): Likewise.
      * xfaces.c (Fcolor_gray_p, Fcolor_supported_p): Likewise.
      * font.c (Ffont_face_attributes, Ffont_family_list, Fopen_font)
      (Fclose_font, Ffont_info): Use decode_live_frame.
      * fontset.c (check_fontset_name): Likewise.
      * terminal.c (Fframe_terminal): Likewise.
      * w32fns.c (check_x_frame): Likewise.
      * window.c (Fminibuffer_window, Fwindow_at)
      (Fcurrent_window_configuration): Likewise.
      (Frun_window_configuration_change_hook, Fwindow_resize_apply):
      Likewise.  Allow zero number of arguments.  Adjust docstring.
      * dispnew.c (Fredraw_frame): Likewise.
      * xfaces.c (frame_or_selected_frame): Remove.
      (Fx_list_fonts, Finternal_get_lisp_face_attribute, Fface_font)
      (Finternal_lisp_face_equal_p, Finternal_lisp_face_empty_p)
      (Fframe_face_alist): Use decode_live_frame.
      * xfns.c (check_x_frame): Likewise.
      d9f07150
    • Dmitry Antipov's avatar
      * emacs-lisp/byte-opt.el (toplevel): Add compare-window-configurations, · 8e6a67b7
      Dmitry Antipov authored
      frame-first-window, frame-root-window, frame-selected-window,
      minibuffer-selected-window, minibuffer-window,
      window-absolute-pixel-edges, window-at, window-body-height,
      window-body-width, window-display-table, window-combination-limit,
      window-frame, window-fringes, window-inside-absolute-pixel-edges,
      window-inside-edges, window-inside-pixel-edges, window-left-child,
      window-left-column, window-margins, window-next-buffers,
      window-next-sibling, window-new-normal, window-new-total,
      window-normal-size, window-parameter, window-parameters, window-parent,
      window-pixel-edges, window-point, window-prev-buffers,
      window-prev-sibling, window-redisplay-end-trigger, window-scroll-bars,
      window-start, window-text-height, window-top-child, window-top-line,
      window-total-height, window-total-width and window-use-time to the list
      of functions without side-effects.
      (toplevel): Add window-valid-p to the list of error-free functions
      without side-effects.
      8e6a67b7
    • Dmitry Antipov's avatar
      * window.c (quad): New function. · 89bc0592
      Dmitry Antipov authored
      (Fwindow_edges, Fwindow_pixel_edges, Fwindow_inside_edges)
      (Fwindow_absolute_pixel_edges, Fwindow_inside_absolute_pixel_edges)
      (Fwindow_inside_pixel_edges, Fpos_visible_in_window_p)
      (Fwindow_line_height): Use it.
      (Fwindow_fringes): Use list3.
      (Fwindow_scroll_bars): Use list4.
      (Fwindow_frame, Fwindow_top_child, Fwindow_left_child)
      (Fwindow_combination_limit): Allow zero number of arguments.
      89bc0592
  2. 05 Nov, 2012 10 commits
  3. 04 Nov, 2012 9 commits
  4. 03 Nov, 2012 18 commits
    • Eli Zaretskii's avatar
      Fix order of entries in ChangeLog files. · 3478f4b5
      Eli Zaretskii authored
      3478f4b5
    • Eli Zaretskii's avatar
      Fix Windows build as fallout from 2012-11-03T18:54:17Z!eggert@cs.ucla.edu. · 3a7089c1
      Eli Zaretskii authored
       nt/config.nt (PENDING_OUTPUT_N_BYTES): Define.
      
       lib/makefile.w32-in (GNULIBOBJS): Add $(BLD)/fpending.$(O) and
       $(BLD)/close-stream.$(O).
       ($(BLD)/close-stream.$(O)):
       ($(BLD)/fpending.$(O)): New dependencies.
      
      Fixes: debbugs:9574
      3a7089c1
    • Glenn Morris's avatar
      5ccd466c
    • Glenn Morris's avatar
    • Glenn Morris's avatar
      Further small cl.texi changes · 92246540
      Glenn Morris authored
      * doc/misc/cl.texi (Creating Symbols, Random Numbers):
      De-emphasize internal variables cl--gensym-counter and cl--random-state. 
      
      * etc/NEWS: Related edits.
      
      Fixes: debbugs:12788
      92246540
    • Paul Eggert's avatar
      Fix data-loss with --batch. · 7ccfb720
      Paul Eggert authored
      * admin/merge-gnulib (GNULIB_MODULES): Add close-stream.
      * lib/close-stream.c, lib/close-stream.h, lib/fpending.c
      * lib/fpending.h, m4/close-stream.m4, m4/fpending.m4:
      New files, from gnulib.
      * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
      * src/emacs.c: Include <close-stream.h>.
      (close_output_streams): New function.
      (main): Pass it to atexit, so that Emacs closes stdout and stderr
      and handles errors appropriately.
      (Fkill_emacs): Don't worry about flushing, as close_output_stream
      does that now.
      
      Fixes: debbugs:9574
      7ccfb720
    • Glenn Morris's avatar
      Rename cl-random-time to cl--random-time · 376a8e83
      Glenn Morris authored
      * emacs-lisp/cl-lib.el (cl--random-time): Rename from cl-random-time. 
      (cl--gensym-counter, cl--random-state): Update callers.
      * emacs-lisp/cl-extra.el (cl-make-random-state): Update callers.
      
      Fixes: debbugs:12773
      376a8e83
    • Paul Eggert's avatar
      Fix a race condition that causes Emacs to mess up glib. · 0b3d4a47
      Paul Eggert authored
      The symptom is a diagnostic "GLib-WARNING **: In call to
      g_spawn_sync(), exit status of a child process was requested but
      SIGCHLD action was set to SIG_IGN and ECHILD was received by
      waitpid(), so exit status can't be returned."  The diagnostic
      is partly wrong, as the SIGCHLD action is not set to SIG_IGN.
      The real bug is a race condition between Emacs and glib: Emacs
      does a waitpid (-1, ...) and reaps glib's subprocess by mistake,
      so that glib can't find it.  Work around the bug by invoking
      waitpid only on subprocesses that Emacs itself creates.
      * process.c (create_process, record_child_status_change):
      Don't use special value -1 in pid field, as the caller now must
      know the pid rather than having the callee infer it.  The
      inference was sometimes incorrect anyway, due to another race.
      (create_process): Set new 'alive' member if child is created.
      (process_status_retrieved): New function.
      (record_child_status_change): Use it.
      Accept negative 1st argument, which means to wait for the
      processes that Emacs already knows about.  Move special-case code
      for DOS_NT (which lacks WNOHANG) here, from caller.  Keep track of
      processes that have already been waited for, by testing and
      clearing new 'alive' member.
      (CAN_HANDLE_MULTIPLE_CHILDREN): Remove, as record_child_status_change
      now does this internally.
      (handle_child_signal): Let record_child_status_change do all
      the work, since we do not want to reap all exited child processes,
      only the child processes that Emacs itself created.
      * process.h (Lisp_Process): New boolean member 'alive'.
      
      Fixes: debbugs:8855
      0b3d4a47
    • Glenn Morris's avatar
      Rename cl-loop-handler, cl-loop-for-handler back to their original names · 49138400
      Glenn Morris authored
      * lisp/emacs-lisp/cl-macs.el (cl-parse-loop-clause):
      Rename handler properties back from cl-- to cl-.
      
      Fixes: debbugs:12788
      49138400
    • Glenn Morris's avatar
      More general edits for cl.texi Appendices · 3a4d1917
      Glenn Morris authored
      3a4d1917
    • Paul Eggert's avatar
      Omit duplicate definitions no longer needed with gcc -g3. · 0d879dca
      Paul Eggert authored
      * lisp.h (GCTYPEBITS, GCALIGNMENT, ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG)
      (VALMASK, MOST_POSITIVE_FIXNUM, MOST_NEGATIVE_FIXNUM):
      Define only as macros.  There's no longer any need to also define
      these symbols as enums or as constants, since we now assume
      gcc -g3 when debugging.
      0d879dca
    • Glenn Morris's avatar
    • Glenn Morris's avatar
      Further edits for doc/misc/cl.texi · 685b0026
      Glenn Morris authored
      * cl.texi: Further general copyedits.
      (List Functions): Remove copy-tree, standard elisp for some time.
      (Efficiency Concerns): Comment out examples that no longer apply.
      (Compiler Optimizations): Rename from "Optimizing Compiler"; reword.
      685b0026
    • Chong Yidong's avatar
      * lispref/objects.texi: Fix last change. · 77f6eafe
      Chong Yidong authored
      77f6eafe
    • Chong Yidong's avatar
    • Chong Yidong's avatar
      Fix a race condition in wait_reading_process_output (tiny change). · 893cc455
      Chong Yidong authored
      * src/process.c (wait_reading_process_output): Avoid a race condition
      with SIGIO delivery.
      
      Fixes: debbugs:11536
      893cc455
    • Chong Yidong's avatar
      * lisp/cus-start.el: Make cursor-type customizable. · 0f7b074f
      Chong Yidong authored
      * src/buffer.c (cursor_type): Untabify docstring.
      
      Fixes: debbugs:11633
      0f7b074f
    • Eli Zaretskii's avatar
      Adapt MSDOS port to latest changes. · 858f0f24
      Eli Zaretskii authored
       config.bat: Copy lib/execinfo.in.h to lib/execinfo.in-h if needed.
      
       msdos/sedlibmk.inp: Sync with changes in lib/Makefile.in.
       (HAVE_DECL_ENVIRON, GNULIB_ENVIRON): Edit to require declaration
       through lib/unistd.h.
       msdos/sed1v2.inp: Sync with changes in src/Makefile.in.
       msdos/sed2v2.inp: Sync with changes in src/config.in.
      
       src/lisp.mk: Adjust comments to the fact that term/internal is now
       loaded from loadup.el.
       src/msdos.c (msdos_abort): Rename from emacs_abort, and make static.
       (msdos_fatal_signal): New function.
       (XMenuActivate): Adjust the call to kbd_buffer_events_waiting to
       its argument list.
       src/conf_post.h (_GL_EXECINFO_INLINE) [MSDOS]: Define to "inline"
       for GCC versions before 4.
       (emacs_raise): Define to call msdos_fatal_signal.
      
       lisp/term/pc-win.el: Don't load term/internal from here.
       lisp/loadup.el: Load term/internal from here.
      858f0f24