Commit graph

32504 commits

Author SHA1 Message Date
Paul Eggert
4b5afbb0d9 * alloc.c: Remove one incorrect comment and fix another. 2012-04-15 23:39:21 -07:00
Paul Eggert
b62a57beb5 Fix minor alloc.c problems found by static checking.
* alloc.c (_malloc_internal, _free_internal) [!DOUG_LEA_MALLOC]:
New extern decls, to avoid calling undeclared functions.
(dont_register_blocks): Define if ((!SYSTEM_MALLOC && !SYNC_INPUT)
&& GC_MALLOC_CHECK), not if ((GC_MARK_STACK || defined
GC_MALLOC_CHECK) && GC_MALLOC_CHECK), to match when it's used.
(NEED_MEM_INSERT): New macro.
(mem_insert, mem_insert_fixup) [!NEED_MEM_INSERT]: Remove; unused.
2012-04-15 20:38:40 -07:00
Paul Eggert
3539f31f03 Fix minor ralloc.c problems found by static checking.
See http://lists.gnu.org/archive/html/emacs-devel/2011-12/msg00720.html
* ralloc.c (ALIGNED, ROUND_TO_PAGE, HEAP_PTR_SIZE)
(r_alloc_size_in_use, r_alloc_freeze, r_alloc_thaw): Remove; unused.
(r_alloc_sbrk): Now static.
2012-04-15 18:18:13 -07:00
Paul Eggert
a041960a7c Improve ralloc.c interface checking.
See http://lists.gnu.org/archive/html/emacs-devel/2011-12/msg00720.html
* buffer.c (ralloc_reset_variable, r_alloc, r_re_alloc)
(r_alloc_free) [REL_ALLOC]: Move decls from here ...
* lisp.h (r_alloc, r_alloc_free, r_re_alloc, r_alloc_reset_variable)
[REL_ALLOC]: ... to here, to check interface.
* m/ia64.h (r_alloc, r_alloc_free) [REL_ALLOC && !_MALLOC_INTERNAL]:
Remove decls.  This fixes an "It stinks!".
2012-04-15 18:10:42 -07:00
Paul Eggert
9426aba403 * alloc.c (which_symbols): Fix alignment issue / type clash. 2012-04-15 17:33:25 -07:00
Andreas Schwab
d55c12ed1f Simplify enforcement of object address alignment
* lisp.h (struct Lisp_Symbol): Remove explicit padding.
(struct Lisp_Misc_Any): Likewise.
(struct Lisp_Free): Likewise.
* alloc.c (union aligned_Lisp_Symbol): Define.
(SYMBOL_BLOCK_SIZE, struct symbol_block): Use union
aligned_Lisp_Symbol instead of struct Lisp_Symbol.
(union aligned_Lisp_Misc): Define.
(MARKER_BLOCK_SIZE, struct marker_block): Use union
aligned_Lisp_Misc instead of union Lisp_Misc.
(Fmake_symbol, allocate_misc, gc_sweep): Adjust
2012-04-15 18:20:54 +02:00
Juanma Barranquero
75f1671a52 Fix ChangeLog typos. 2012-04-15 04:59:30 +02:00
Paul Eggert
b948ce8b02 Make GC_MAKE_GCPROS_NOOPS the default (Bug#9926).
* lisp.h (GC_MARK_STACK): Default to GC_MAKE_GCPROS_NOOPS.
* s/cygwin.h, s/darwin.h, s/freebsd.h, s/gnu.h, s/irix6-5.h, s/msdos.h:
* s/netbsd.h, s/sol2-6.h:
Remove definition of GC_MARK_STACK, since the default now works.
* s/aix4-2.h, s/hpux10-20.h, s/unixware.h:
Define GC_MARK_STACK to GC_USE_GCPROS_AS_BEFORE, since that's
no longer the default.
* s/gnu-linux.h (GC_MARK_STACK): Adjust to change in default.
2012-04-13 23:18:49 -07:00
Paul Eggert
5ae255c7e9 Spelling fixes.
* lisp/hexl.el (hexl-rulerize): Rename from hexl-rulerise, since
Emacs uses American spelling.
2012-04-13 22:10:55 -07:00
Glenn Morris
35dc09a19c Merge from emacs-24, up to 2012-04-10T02:06:19Z!larsi@gnus.org 2012-04-13 18:46:06 -07:00
Atsuo Ohki
ad3a2b411d * lread.c (lisp_file_lexically_bound_p): Fix hang at ";-*-\n".
Fixes: debbugs:11238
2012-04-13 14:08:18 -04:00
Ken Brown
bcd86815d6 * src/s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. 2012-04-13 10:50:25 -04:00
Chong Yidong
c6e571fbb7 Fix typo in last commit. 2012-04-13 14:22:01 +08:00
Reuben Thomas
c25df26eff * src/indent.c (Fmove_to_column): Change interactive spec. 2012-04-13 14:20:39 +08:00
Daniel Colascione
0fc59f1e60 Use the real vfork under Cygwin
* s/cygwin.h: The vfork the #define in cygwin.h was protecting
against is gone.  It's better to use vfork now so that when Cygwin
gains a new, working vfork, we use it automatically.

Fixes: debbugs:10398
2012-04-11 13:43:55 +02:00
Stefan Monnier
de8c03dc51 * src/window.c (save_window_save): Obey window-point-insertion-type.
* lisp/window.el (window--state-get-1): Idem.
2012-04-10 22:36:04 -04:00
Glenn Morris
2f097256b9 Repurpose C_SWITCH_X_SYSTEM as GNUSTEP_CFLAGS
This is the only thing left that uses it.

* configure.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.

* src/Makefile.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.

* lwlib/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.

* oldXMenu/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.

* msdos/sedlibmk.inp, msdos/sed1v2.inp:
GNUSTEP_CFLAGS replaces C_SWITCH_X_SYSTEM.
2012-04-10 21:25:51 -04:00
Stefan Monnier
453b951e7d * src/alloc.c (lisp_align_malloc): Remove unneeded prototype. 2012-04-10 20:51:44 -04:00
Jason S. Cornez
6bbef4e552 * src/keyboard.c: Override inhibit-quit after the third C-g.
(force_quit_count): New var.
(handle_interrupt): Use it.

Fixes: debbugs:6585
2012-04-10 15:36:17 -04:00
Juanma Barranquero
2a8ce227d0 Record and display absolute path of DLLs loaded (bug#10424).
* lisp/misc.el (list-dynamic-libraries--loaded): New function.
  (list-dynamic-libraries--refresh): Use it.

* src/w32.c (w32_delayed_load): Record the full path of the library
  being loaded.
2012-04-10 16:16:05 +02:00
Chong Yidong
e63c261b77 Merge 2012-04-09 GnuTLS fix from trunk 2012-04-10 16:00:43 +08:00
Glenn Morris
05920a43fc doc.c fix for bug#11036
* src/doc.c (Fsnarf_documentation): Check variables, functions are bound,
not just in the obarray, before snarfing them.
2012-04-09 16:43:15 -04:00
Glenn Morris
935396c0f0 Rename leim/Makefile's BUILT_EMACS to EMACS
* leim/Makefile.in (EMACS): Rename from BUILT_EMACS.
(RUN_EMACS, compile-main): Update for this change.

* src/Makefile.in ($(leimdir)/leim-list.el):
Pass EMACS rather than BUILT_EMACS.
2012-04-09 16:37:08 -04:00
Chong Yidong
fb7ada5f94 Remove * characters from the front of variable docstrings. 2012-04-09 21:05:48 +08:00
Eli Zaretskii
4c6fe6c009 Fix wording of comment in the last commit. 2012-04-09 15:46:34 +03:00
Ted Zlatanov
a18ecafa99 Limit number of GnuTLS handshakes per connection.
* gnutls.c (gnutls_log_function2i): Convenience log function.
(emacs_gnutls_read): Use new log functions,
`gnutls_handshakes_tried' process member, and
`GNUTLS_EMACS_HANDSHAKES_LIMIT' to limit the number of handshake
attempts per process (connection).

* gnutls.h: Add `GNUTLS_EMACS_HANDSHAKES_LIMIT' upper limit.  Add
convenience `GNUTLS_LOG2i' macro.

* process.c (make_process):
* process.h: Add integer `gnutls_handshakes_tried' member to
process struct.
2012-04-09 08:46:16 -04:00
Chong Yidong
b4d3bc10dc Remove defining user variables via * in docstring.
* lisp/apropos.el (apropos-variable):
* lisp/files-x.el (read-file-local-variable):
* lisp/simple.el (set-variable):
* lisp/woman.el (woman-mini-help):
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Callers changed.

* lisp/custom.el (custom-variable-p): Return nil for non-symbol
arguments instead of signaling an error.
(user-variable-p): Obsolete alias for custom-variable-p.

* lisp/erc/erc.el (erc-cmd-SET): Call custom-variable-p instead of
user-variable-p.

* src/callint.c (Finteractive, Fcall_interactively):
* src/minibuf.c (Fread_variable): Callers changed.

* src/eval.c (Fuser_variable_p, user_variable_p_eh)
(lisp_indirect_variable): Functions deleted.
(Fdefvar): Caller changed.

* doc/lispref/commands.texi (Interactive Codes):
* doc/lispref/help.texi (Accessing Documentation):
* doc/lispref/minibuf.texi (High-Level Completion): Callers changed.

* doc/lispref/customize.texi (Variable Definitions): Remove user-variable-p.
2012-04-09 20:36:01 +08:00
Eli Zaretskii
e53357c466 Fix bug #11199 with killing a line at EOB that was bidi-reordered.
src/xdisp.c (find_last_unchanged_at_beg_row): Don't consider a row
 "unchanged" if its end.pos is beyond ZV.
2012-04-09 15:28:45 +03:00
Jan Djärv
aff67c8241 * nsterm.m (constrainFrameRect): Always constrain when there is only
one screen.

Fixes: debbugs:10962
2012-04-09 12:01:04 +02:00
Eli Zaretskii
70f4d9736b Fix bug #11094 with cursor display on display string after invisible text.
src/xdisp.c (set_cursor_from_row): If the display string appears in
 the buffer at position that is closer to point than the position
 after the display string, display the cursor on the first glyph of
 the display string.  Fixes cursor display when a 'display' text
 property immediately follows invisible text.
2012-04-09 11:00:08 +03:00
Paul Eggert
cb3c2e3eca composite.c: use 'double' consistently
* composite.c (get_composition_id): Use 'double' consistently
instead of converting 'float' to 'double' and vice versa; this is
easier to understand and avoids a GCC warning.
2012-04-08 23:52:40 -07:00
Glenn Morris
50fe702a88 Generate leim-list with bootstrap-emacs, in prep for dumping it with emacs
* src/Makefile.in: (leimdir): New variable.
($(leimdir)/leim-list.el): New rule.
(emacs$(EXEEXT)): Depend on leim-list.el.

Fixes: debbugs:4789
2012-04-08 23:47:33 -07:00
Glenn Morris
fd06db5dd6 Remove ucs-set-table-for-input dead code
This function was removed with ucs-tables.el in 2008.

* lisp/international/mule-cmds.el (set-default-coding-systems):
* lisp/files.el (normal-mode):
Remove guarded calls to ucs-set-table-for-input. 

* src/buffer.c (Qucs_set_table_for_input): Remove.
(Fget_buffer_create): Don't call Qucs_set_table_for_input.
(init_buffer_once, syms_of_buffer): Remove Qucs_set_table_for_input.

Fixes: debbugs:9821
2012-04-08 17:58:00 -07:00
Andreas Schwab
55c131eef9 * lisp.h (struct Lisp_Symbol): Add explicit padding to ensure
proper alignment.
2012-04-08 23:14:30 +02:00
Juanma Barranquero
d402bcb11b src/makefile.w32-in ($(BLD)/xml.$(O)): Reorder entry. 2012-04-07 23:32:59 +02:00
Juanma Barranquero
9209588f2d src/xml.c (init_libxml2_functions) [WINDOWSNT]: Remove unused local variable. 2012-04-07 22:54:50 +02:00
Paul Eggert
e3fb2efb80 Avoid unnecessary pointer scanning in garbage collection (Bug#10780).
* alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): New macro.
(mark_memory): Mark Lisp_Objects only if pointers might hide in
objects, as mark_maybe_pointer will catch them otherwise.
(GC_LISP_OBJECT_ALIGNMENT): Remove; no longer needed.
* s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT) [__mc68000__]: Likewise.
2012-04-07 12:18:52 -07:00
Paul Eggert
b5385551e3 Fix typo that broke non-Windows builds.
* xml.c (libxml2_loaded_p) [!!WINDOWSNT]: 'inine' -> 'inline'.
2012-04-07 08:15:22 -07:00
Eli Zaretskii
9078ead6ce Support building on MS-Windows with libxml2.
src/makefile.w32-in (OBJ2): Add xml.$(O).
 (GLOBAL_SOURCES): Add xml.c.
 ($(BLD)/xml.$(O)): New dependency list.
 src/xml.c (DEF_XML2_FN, LOAD_XML2_FN) [WINDOWSNT]: New macros.
 (fn_htmlReadMemory, fn_xmlReadMemory, fn_xmlDocGetRootElement)
 (fn_xmlFreeDoc, fn_xmlCleanupParser, fn_xmlCheckVersion)
 [!WINDOWSNT]: New macros.
 (init_libxml2_functions, libxml2_loaded_p): New functions.
 (parse_region): Call fn_xmlCheckVersion instead of using the macro
 LIBXML_TEST_VERSION.  Call libxml2 functions via the fn_* macros.
 (xml_cleanup_parser): New function, export for fn_xmlCleanupParser.
 Calls xmlCleanupParser only if libxml2 was loaded (or statically
 linked in).
 (Flibxml_parse_html_region, Flibxml_parse_xml_region): Call
 init_libxml2_functions before calling libxml2 functions.
 (syms_of_xml) <Qlibxml2_dll>: DEFSYM it.
 src/emacs.c: Don't include libxml/parser.h.
 (shut_down_emacs): Call xml_cleanup_parser, instead of calling
 xmlCleanupParser directly.
 src/ lisp.h [HAVE_LIBXML2]: Add prototype for xml_cleanup_parser.

 nt/configure.bat: Support building with libxml2.
 nt/INSTALL:
 nt/README.W32: Add information about libxml2.

 lisp/term/w32-win.el (dynamic-library-alist): Add libxml2 DLLs.

 lib-src/makefile.w32-in (obj): Add xml.o.
2012-04-07 16:57:36 +03:00
Eli Zaretskii
3811fdf3e8 Fix bug #11133 with vertical-motion across a long display string.
src/indent.c (Fvertical_motion): If there is a display string at
 point, use it.vpos to compute how many lines to backtrack after 
 move_it_to point.
2012-04-07 10:54:56 +03:00
Eli Zaretskii
2f8e16b2a3 Warning comments about subtleties of fetching characters from buffers/strings.
src/buffer.h (FETCH_CHAR, FETCH_MULTIBYTE_CHAR):
 src/character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH): Add comments
 about subtle differences between FETCH_CHAR* and STRING_CHAR*
 macros related to unification of CJK characters.  For the details,
 see the discussion following the message here:
 http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11073#14.
2012-04-06 16:10:30 +03:00
Chong Yidong
3d439cd10f Several miscellaneous doc changes.
* doc/lispref/display.texi (Delayed Warnings): New node.

* doc/misc/gnus-faq.texi (FAQ 8-2): Mention EasyPG.

* doc/misc/gnus.texi: Reduce references to obsolete pgg library.
(Security): Note that epg is now the default.

* doc/misc/message.texi (Using PGP/MIME): Note that epg is now the default.

* doc/misc/nxml-mode.texi (Completion): C-RET is no longer bound to
nxml-complete.

* lisp/subr.el (delayed-warnings-hook): Doc fix.

* src/keyboard.c (Vdelayed_warnings_list): Doc fix.
2012-04-04 15:54:02 +08:00
Eli Zaretskii
8bc53d00e3 Fix unsafe use of alloca reported in bug #11138.
src/w32menu.c (simple_dialog_show, add_menu_item): Use SAFE_ALLOCA
 instead of alloca.
2012-04-01 19:55:30 +03:00
Andreas Schwab
3b0512a3d5 Fixes: debbugs:11141
* w32menu.c (is_simple_dialog): Properly check lisp types.
2012-04-01 18:42:57 +02:00
Eli Zaretskii
979022ef17 Fix bug #11063 with move_it_by_lines when there's a before-string at bol.
src/xdisp.c (move_it_by_lines): When DVPOS is positive, and the
 position we get to after a call to move_it_to fails the
 IS_POS_VALID_AFTER_MOVE_P test, move to the next buffer position
 only if we wind up in a string from display property.
2012-03-31 22:30:53 +03:00
Eli Zaretskii
a6b1c7ccc3 Fix bug #7464 with mouse highlight after "C-x 1".
src/window.c (Fdelete_other_windows_internal): Invalidate the row
 and column information about mouse highlight, so that redisplay
 restores it after reallocating the glyph matrices.
2012-03-31 21:10:34 +03:00
Eli Zaretskii
697ba24bbf Remove an incorrect assertion on move_it_by_lines.
src/xdisp.c (move_it_by_lines): Remove the assertion that
 "it->current_x == 0 && it->hpos == 0" which can be legitimately
 violated when there's a before-string at the beginning of a line.
 (Bug#11063)
2012-03-31 20:08:38 +03:00
Eli Zaretskii
8427ddd200 Fix cursor positioning in rows completely covered by display strings.
src/xdisp.c (set_cursor_from_row): If `cursor' property on a display
 string comes from a `display' text property, use the buffer
 position of that property as if we actually saw that position in
 the row's glyphs.
2012-03-31 10:45:33 +03:00
Eli Zaretskii
65a0a73847 Fix bug #11068 with window display when default face was remapped.
src/xdisp.c (append_space_for_newline): If the default face was
 remapped, use the remapped face for the appended newline.
 (extend_face_to_end_of_line): Use the remapped default face for
 extending the face to the end of the line.
 (display_line): Call extend_face_to_end_of_line when the default
 face was remapped.
2012-03-30 11:45:27 +03:00
Eli Zaretskii
581355cc06 Discourage in comments from defining HAVE_GETCWD on MS-Windows.
src/s/ms-w32.h: Discourage from defining HAVE_GETCWD.
 nt/config.nt: Discourage from defining HAVE_GETCWD.
2012-03-29 22:06:39 +02:00