- 04 Sep, 2012 2 commits
-
-
Paul Eggert authored
* doc/emacs/trouble.texi (Crashing): New section, documenting this. * etc/NEWS: Document the change. * src/alloc.c [ENABLE_CHECKING]: Do not include <execinfo.h>. (die) [ENABLE_CHECKING]: Call fatal_error_backtrace instead of doing the work ourselves. * src/emacs.c (fatal_error_signal): Let fatal_error_backtrace do most of the work. (fatal_error_backtrace): New function, taken from the guts of the old fatal_error_signal, but with a new option to output a backtrace. (shut_down_emacs) [!DOS_NT]: Use strsignal to give more-useful info about the signal than just its number. * src/lisp.h (fatal_error_backtrace, emacs_backtrace): New decls. * src/sysdep.c: Include <execinfo.h> (emacs_backtrace): New function, taken partly from the previous code of the 'die' function. (emacs_abort): Call fatal_error_backtrace rather than abort.
-
Paul Eggert authored
Do not try to redefine the 'abort' function. Instead, redo the code so that it calls 'emacs_abort' rather than 'abort'. This removes the need for the NO_ABORT configure-time macro and makes it easier to change the abort code to do a backtrace. * configure.ac (NO_ABRT): Remove. * admin/CPP-DEFINES (NO_ABORT): Remove. * nt/inc/ms-w32.h (w32_abort) [HAVE_NTGUI]: Remove. * src/.gdbinit: Just stop at emacs_abort, not at w32_abort or abort. * src/emacs.c (abort) [!DOS_NT && !NO_ABORT]: Remove; sysdep.c's emacs_abort now takes its place. * src/lisp.h (emacs_abort): New decl. All calls from Emacs code to 'abort' changed to use 'emacs_abort'. * src/msdos.c (dos_abort) [defined abort]: Remove; not used. (abort) [!defined abort]: Rename to ... (emacs_abort): ... new name. * src/sysdep.c (emacs_abort) [!HAVE_NTGUI]: New function, taking the place of the old 'abort' in emacs.c. * src/w32.c, src/w32fns.c (abort): Do not #undef. * src/w32.c (emacs_abort): Rename from w32_abort.
-
- 02 Sep, 2012 1 commit
-
-
Paul Eggert authored
* emacs.c (initialized, inhibit_window_system, running_asynch_code): (malloc_using_checking) [DOUG_LEA_MALLOC]: (display_arg) [HAVE_X_WINDOWS || HAVE_NS]: (noninteractive, no_site_lisp, fatal_error_in_progress, argmatch) (main, decode_env_path, Fdaemon_initialized): * eval.c (call_debugger, Finteractive_p, interactive_p): (unwind_to_catch, Fsignal, wants_debugger, skip_debugger) (maybe_call_debugger, Fbacktrace): * process.c (read_process_output, exec_sentinel): Use bool for booleans. * emacs.c (shut_down_emacs): Omit unused boolean argument NO_X. All callers changed. * eval.c (interactive_p): Omit always-true boolean argument EXCLUDE_SUBRS_P. All callers changed. * dispextern.h, lisp.h: Reflect above API changes. * firstfile.c (dummy): Use the address of 'main', whose signature won't change, instead of the address of 'initialize', whose signature just changed from int to bool. * lisp.h (fatal_error_in_progress): New decl of boolean, moved here ... * msdos.c (fatal_error_in_progress): ... from here. * xdisp.c (redisplaying_p): Now a boolean. Set it to 1 instead of incrementing it. (redisplay_internal, unwind_redisplay): Simply clear REDISPLAYING_P when unwinding, instead of saving its previous, always-false value and then restoring it.
-
- 01 Sep, 2012 2 commits
-
-
Daniel Colascione authored
This change streamlines the window system selection code in configure.in and moves many common function declarations from window-specific headers to frame.h. It introduces a new TERM_HEADER macro in config.h: we set this macro to the right header to use for the window system for which we're compiling Emacs and have source files include it indirectly. This way, we don't have to teach every file about every window system.
-
Paul Eggert authored
* doc/lispref/numbers.texi (Random Numbers): Document new behavior of the calls (random) and (random STRING). * etc/NEWS: Document new behavior of (random), (random "string"). * lisp/play/5x5.el, lisp/play/animate.el, lisp/play/cookie1.el: * lisp/play/dissociate.el, lisp/play/doctor.el, lisp/play/dunnet.el: * lisp/play/gomoku.el, lisp/play/landmark.el, lisp/play/mpuz.el: * lisp/play/tetris.el, lisp/play/zone.el: * lisp/calc/calc-comb.el (math-init-random-base): * lisp/play/blackbox.el (bb-init-board): * lisp/play/life.el (life): * lisp/server.el (server-use-tcp): * lisp/type-break.el (type-break): Remove unnecessary call to (random t). * lisp/net/sasl.el (sasl-unique-id-function): Change (random t) to (random), now that the latter is more random. * lisp/play/life.el (life-initialized): Remove no-longer-needed var. * lisp/gnus/gnus-sync.el (gnus-sync-lesync-setup): * lisp/gnus/message.el (message-canlock-generate, message-unique-id): Change (random t) to (random), now that the latter is more random. * lisp/org/org-id.el (org-id-uuid): Change (random t) to (random), now that the latter is more random. * src/emacs.c (main): Call init_random. * src/fns.c (Frandom): Set the seed from a string argument, if given. Remove long-obsolete Gentzel cruft. * src/lisp.h, src/sysdep.c (seed_random): Now takes address and size, not long. (init_random): New function.
-
- 25 Aug, 2012 1 commit
-
-
Paul Eggert authored
All uses removed. This leftover from old code was always 0.
-
- 19 Aug, 2012 1 commit
-
-
Paul Eggert authored
as gnulib does this if the system doesn't. * lib-src/emacsclient.c (environ): Remove decl. * src/callproc.c, src/editfns.c, src/process.c (environ) [!USE_CRT_DLL]: * src/emacs.c (environ) [DOUG_LEA_MALLOC]: * src/vm-limit.c (environ) [ORDINARY_LINK]: Remove decl. * src/vm-limit.c: Include <unistd.h>, for 'environ'.
-
- 05 Aug, 2012 2 commits
-
-
Andreas Schwab authored
-
Chong Yidong authored
* lisp/files.el (kill-buffer-hook): Provide a defvar. * src/term.c (Vsuspend_tty_functions, Vresume_tty_functions): * src/frame.c (Vdelete_frame_functions): * src/emacs.c (Vkill_emacs_hook): Doc fix.
-
- 04 Aug, 2012 1 commit
-
-
Eli Zaretskii authored
src/w32.c (init_environment): Change the default values of many environment variables in dflt_envvars[] to NULL, to avoid pushing them into environment when they were not already defined. Remove the code that deletes site-lisp subdirectories from the default value of EMACSLOADPATH, as it is no longer needed. (check_windows_init_file): Now external, not static. Use Vload_path as is, without adding anything, as this function is now called when Vload_path is already set up. src/w32.h (check_windows_init_file): Add prototype. src/emacs.c (init_cmdargs) [WINDOWSNT]: When running from the build directory, ignore the /*/i386/ tail in Vinvocation_directory, for compatibility with Posix platforms. (main): Move the call to check_windows_init_file to here from w32.c. (decode_env_path) [WINDOWSNT]: Expand the %emacs_dir%/ prefix, if any, in the DEFALT argument into the root of the Emacs build or installation tree, as appropriate. src/callproc.c (init_callproc_1): Call decode_env_path instead of doing its equivalent by hand. (init_callproc): Replace DOS_NT condition with MSDOS, thus letting the code that sets Vexec_path run on MS-Windows. src/lread.c (init_lread): Add comments to #ifdef's. nt/paths.h (PATH_LOADSEARCH, PATH_SITELOADSEARCH, PATH_EXEC) (PATH_DATA, PATH_DOC): Replace dummy directory names with directories relative to %emacs_dir%. (PATH_EXEC): Add lib-src/oo-spd/i386 and lib-src/oo/i386, to cater to the use case of running un-installed Emacs.
-
- 02 Aug, 2012 1 commit
-
-
Glenn Morris authored
-
- 31 Jul, 2012 1 commit
-
-
Glenn Morris authored
* src/editfns.c (USER_FULL_NAME): * src/emacs.c (SEPCHAR): * src/process.h (NULL_DEVICE): Let configure set them.
-
- 26 Jul, 2012 3 commits
-
-
Paul Eggert authored
Fixes: debbugs:12036
-
Paul Eggert authored
* alloc.c (ARRAY_MARK_FLAG_VAL, PSEUDOVECTOR_FLAG_VAL, VALMASK_VAL) (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Move these here from emacs.c, as this is a more-suitable home. Had this been done earlier the fix for 1995-05-30T23:07:27Z!kwzh@gnu.org would have avoided some of the problems noted in <http://bugs.gnu.org/1995-05-30T23:07:27Z!kwzh@gnu.org#13> by Eli Zaretskii, as the scope problems would have been more obvious. * emacs.c (gdb_CHECK_LISP_OBJECT_TYPE, gdb_DATA_SEG_BITS) (gdb_GCTYPEBITS, gdb_USE_LSB_TAG) (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS, GCTYPEBITS, USE_LSB_TAG): Remove; now done in lisp.h. * lisp.h (PUBLISH_TO_GDB): New macro. (GCTYPEBITS, USE_LSB_TAG, CHECK_LISP_OBJECT_TYPE, enum pvec_type) (DATA_SEG_BITS): Use it. (GCTYPEBITS, USE_LSB_TAG): Now also an enum, for GDB. (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS): Now just an enum, for GDB. * mem-limits.h (EXCEEDS_LISP_PTR): Redo so that DATA_SEG_BITS need not be usable in #if. This simplifies things.
-
Paul Eggert authored
* etc/emacs-buffer.gdb ($tagmask, $valmask): Remove. (ygetptr): Adjust to recent changes in lisp.h and emacs.c, by using VALMASK instead of $valmask, CHECK_LISP_OBJECT_TYPE instead of gdb_use_union, and DATA_SEG_BITS instead of gdb_data_seg_bits. Also, use $ptr.i rather than $ptr.u.val. * src/.gdbinit (xgetptr, xgetint, xgettype): Don't use "set $bugfix = $bugfix.i", as this doesn't work (with GDB 7.4.1, anyway). (xgetptr, xgetint, xgettype, xcoding, xcharset, xprintbytestr): Adjust to changes in lisp.h and emacs.c, by using CHECK_LISP_OBJECT_TYPE rather than gdb_use_struct, VALMASK instead of $valmask, DATA_SEG_BITS instead of gdb_data_seg_bits, INTTYPEBITS instead of gdb_gctypebits - 1, USE_LSB_TAG instead of gdb_use_lsb, (1 << GCTYPEBITS) - 1 instead of $tagmask, VALBITS instead of gdb_valbits. (xvectype, xvector, xpr, xprintstr, xbacktrace): Similarly, use PSEUDOVECTOR_FLAG instead of PVEC_FLAG, and ARRAY_MARK_FLAG instead of gdb_array_mark_flag. (xboolvector): Get size from $->size, not $->header.size. Use BOOL_VECTOR_BITS_PER_CHAR rather than mystery constants. (xreload, hook-run, hookpost-run): Remove. * src/emacs.c: Include <verify.h>. (gdb_use_lsb, gdb_use_struct, gdb_valbits, gdb_gctypebits) (gdb_data_seg_bits, PVEC_FLAG, gdb_array_mark_flag, gdb_pvec_type): Remove. (gdb_CHECK_LISP_OBJECT_TYPE, gdb_DATA_SEG_BITS, gdb_GCTYPEBITS) (gdb_USE_LSB_TAG): New enum constants. (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS, GCTYPEBITS, USE_LSB_TAG): Also define these as enum constants, so they're visible to GDB. (ARRAY_MARK_FLAG_VAL, PSEUDOVECTOR_FLAG_VAL, VALMASK_VAL): New macros. (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Also define these as constants, so they're visible to GDB. * src/lisp.h (VALBITS, INTTYPEBITS, FIXNUM_BITS, PSEUDOVECTOR_SIZE_BITS) (PSEUDOVECTOR_SIZE_MASK, PVEC_TYPE_MASK, BOOL_VECTOR_BITS_PER_CHAR): Now enum constants, not macros, so they're visible to GDB. (CHECK_LISP_OBJECT_TYPE, DATA_SEG_BITS): Default to 0, as this is more convenient now. All uses changed. (VALMASK) [USE_LSB_TAG]: Also define in this case. * src/mem-limits.h (EXCEEDS_LISP_PTR): Adjust to DATA_SEG_BITS change.
-
- 16 Jul, 2012 1 commit
-
-
Dmitry Antipov authored
* lisp.h (init_character_once, init_fns, init_image) (init_filelock, init_sound): Remove prototype. * character.c (init_character_once): Remove. * filelock.c (init_filelock): Likewise. * fns.c (init_fns): Likewise. * image.c (init_image): Likewise. * sound.c (init_sound): Likewise. * emacs.c (main): Adjust accordingly.
-
- 12 Jul, 2012 1 commit
-
-
Glenn Morris authored
The old name is also the name of a Mach system call. * src/process.c (init_process_emacs): Rename from init_process. * src/lisp.h, src/emacs.c: Update for this name change. * src/nsgui.h, src/sysselect.h, src/s/darwin.h: Remove workaround that is no longer needed.
-
- 10 Jul, 2012 1 commit
-
-
Glenn Morris authored
Ref bugs 4309, 6401, etc. This is the last environment variable (ab)used by the ns port in this way. * src/nsterm.m (ns_load_path): Rename from ns_init_paths. Now it does not set EMACSLOADPATH, just returns the load-path string. * src/nsterm.h: Update accordingly. * src/lread.c [HAVE_NS]: Include nsterm.h. (init_lread) [HAVE_NS]: Use ns_load_path. * src/emacs.c (main) [HAVE_NS]: No longer call ns_init_paths.
-
- 09 Jul, 2012 1 commit
-
-
Paul Eggert authored
-
- 05 Jul, 2012 2 commits
-
-
Paul Eggert authored
* alloc.c, bidi.c, buffer.c, buffer.h, bytecode.c, callint.c: * callproc.c, charset.c, coding.c, composite.c, data.c, dispnew.c: * doc.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fns.c: * font.c, fontset.c, frame.c, fringe.c, ftfont.c, ftxfont.c, gmalloc.c: * gtkutil.c, image.c, keyboard.c, keymap.c, lread.c, macros.c, menu.c: * nsfns.m, nsfont.m, nsmenu.m, nsterm.m, print.c, process.c, ralloc.c: * regex.c, region-cache.c, scroll.c, search.c, sound.c, syntax.c: * sysdep.c, term.c, termcap.c, unexmacosx.c, window.c, xdisp.c: * xfaces.c, xfns.c, xftfont.c, xgselect.c, xmenu.c, xrdb.c, xselect.c: * xterm.c: Omit needless casts involving void * pointers and allocation. Prefer "P = xmalloc (sizeof *P)" to "P = xmalloc (sizeof (TYPE_OF_P))", as the former is more robust if P's type is changed. Prefer xzalloc to xmalloc + memset 0. Simplify malloc-or-realloc to realloc. Don't worry about xmalloc returning a null pointer. Prefer xstrdup to xmalloc + strcpy. * editfns.c (Fmessage_box): Grow message_text by at least 80 when growing it. * keyboard.c (apply_modifiers_uncached): Prefer local array to alloca of a constant.
-
Dmitry Antipov authored
* admin/coccinelle/xzalloc.cocci: Semantic patch to convert calls to xmalloc with following memset to xzalloc. * src/lisp.h (xzalloc): New prototype. Omit needless casts. * src/alloc.c (xzalloc): New function. Omit needless casts. * src/charset.c: Omit needless casts. Convert all calls to malloc with following memset to xzalloc. * src/dispnew.c: Likewise. * src/fringe.c: Likewise. * src/image.c: Likewise. * src/sound.c: Likewise. * src/term.c: Likewise. * src/w32fns.c: Likewise. * src/w32font.c: Likewise. * src/w32term.c: Likewise. * src/xfaces.c: Likewise. * src/xfns.c: Likewise. * src/xterm.c: Likewise. * src/atimer.c: Omit needless casts. * src/buffer.c: Likewise. * src/callproc.c: Likewise. * src/ccl.c: Likewise. * src/coding.c: Likewise. * src/composite.c: Likewise. * src/doc.c: Likewise. * src/doprnt.c: Likewise. * src/editfns.c: Likewise. * src/emacs.c: Likewise. * src/eval.c: Likewise. * src/filelock.c: Likewise. * src/fns.c: Likewise. * src/gtkutil.c: Likewise. * src/keyboard.c: Likewise. * src/lisp.h: Likewise. * src/lread.c: Likewise. * src/minibuf.c: Likewise. * src/msdos.c: Likewise. * src/print.c: Likewise. * src/process.c: Likewise. * src/region-cache.c: Likewise. * src/search.c: Likewise. * src/sysdep.c: Likewise. * src/termcap.c: Likewise. * src/terminal.c: Likewise. * src/tparam.c: Likewise. * src/w16select.c: Likewise. * src/w32.c: Likewise. * src/w32reg.c: Likewise. * src/w32select.c: Likewise. * src/w32uniscribe.c: Likewise. * src/widget.c: Likewise. * src/xdisp.c: Likewise. * src/xmenu.c: Likewise. * src/xrdb.c: Likewise. * src/xselect.c: Likewise.
-
- 04 Jul, 2012 2 commits
-
-
Paul Eggert authored
This variable's comment says Emacs needs at least one GDB-visible symbol of type enum pvec_type, to work around GDB problems. The symbol's value doesn't matter.
-
Stefan Monnier authored
* src/lisp.h (enum pvec_type): Use fewer bits. (PSEUDOVECTOR_SIZE_BITS): New constant. (PSEUDOVECTOR_SIZE_MASK, PVEC_TYPE_MASK): Use it. (XSETPVECTYPESIZE, XSETTYPED_PSEUDOVECTOR, DEFUN): Adapt code to change in pvec_type. (PSEUDOVECTOR_TYPEP): New macro. (TYPED_PSEUDOVECTORP): Use it. * src/fns.c (internal_equal): Adapt code to extract pvectype. * src/emacs.c (gdb_pvec_type): Update type. * src/alloc.c (PSEUDOVECTOR_NBYTES): New macro. (VECTOR_FREE_LIST_SIZE_MASK): Remove (=> PSEUDOVECTOR_SIZE_MASK). (VECTOR_FREE_LIST_FLAG): Remove (=> PVEC_FREE). (SETUP_ON_FREE_LIST): Use XSETPVECTYPESIZE. (sweep_vectors): Use it. Use local var `total_bytes' instead of abusing vector->header.next.nbytes. (live_vector_p): Use PVEC_TYPE. (mark_object): Adapt code to extract pvectype. Use switch.
-
- 24 Jun, 2012 1 commit
-
-
Dan Nicolaescu authored
-
- 16 Jun, 2012 1 commit
-
-
Andreas Schwab authored
(BUF_FETCH_MULTIBYTE_CHAR): Likewise. * character.c (_fetch_multibyte_char_p): Remove. * alloc.c: Include "character.h" before "buffer.h". * bidi.c: Likewise. * buffer.c: Likewise. * bytecode.c: Likewise. * callint.c: Likewise. * callproc.c: Likewise. * casefiddle.c: Likewise. * casetab.c: Likewise. * category.c: Likewise. * cmds.c: Likewise. * coding.c: Likewise. * composite.c: Likewise. * dired.c: Likewise. * dispnew.c: Likewise. * doc.c: Likewise. * dosfns.c: Likewise. * editfns.c: Likewise. * emacs.c: Likewise. * fileio.c: Likewise. * filelock.c: Likewise. * font.c: Likewise. * fontset.c: Likewise. * fringe.c: Likewise. * indent.c: Likewise. * insdel.c: Likewise. * intervals.c: Likewise. * keyboard.c: Likewise. * keymap.c: Likewise. * lread.c: Likewise. * macros.c: Likewise. * marker.c: Likewise. * minibuf.c: Likewise. * nsfns.m: Likewise. * nsmenu.m: Likewise. * print.c: Likewise. * process.c: Likewise. * regex.c: Likewise. * region-cache.c: Likewise. * search.c: Likewise. * syntax.c: Likewise. * term.c: Likewise. * textprop.c: Likewise. * undo.c: Likewise. * unexsol.c: Likewise. * w16select.c: Likewise. * w32fns.c: Likewise. * w32menu.c: Likewise. * window.c: Likewise. * xdisp.c: Likewise. * xfns.c: Likewise. * xmenu.c: Likewise. * xml.c: Likewise. * xselect.c: Likewise.
-
- 13 Jun, 2012 2 commits
-
-
Andreas Schwab authored
* configure.in: Rename --enable-use-lisp-union-type to --enable-check-lisp-object-type and define CHECK_LISP_OBJECT_TYPE instead of USE_LISP_UNION_TYPE. * admin/make-emacs: Rename --union-type to --check-lisp-type. Define CHECK_LISP_OBJECT_TYPE insted of USE_LISP_UNION_TYPE. * admin/CPP-DEFINES (DEBUG_LISP_OBJECT_TYPE): Renamed from USE_LISP_UNION_TYPE. * src/lisp.h (Lisp_Object) [CHECK_LISP_OBJECT_TYPE]: Define as struct instead of union. (XLI, XIL): Define. (XHASH, XTYPE, XINT, XUINT, make_number, XSET, XPNTR, XUNTAG): Use them. * src/emacs.c (gdb_use_struct): Renamed from gdb_use_union. * src/.gdbinit: Check gdb_use_struct instead of gdb_use_union. * src/alloc.c (widen_to_Lisp_Object): Removed. (mark_memory): Use XIL instead of widen_to_Lisp_Object. * src/frame.c (delete_frame): Remove outdated comment. * src/w32fns.c (Fw32_register_hot_key): Use XLI instead of checking USE_LISP_UNION_TYPE. (Fw32_unregister_hot_key): Likewise. (Fw32_toggle_lock_key): Likewise. * src/w32menu.c (add_menu_item): Likewise. (w32_menu_display_help): Use XIL instead of checking USE_LISP_UNION_TYPE. * src/w32heap.c (allocate_heap): Don't check USE_LISP_UNION_TYPE. (init_heap): Likewise. * src/w32term.c (w32_read_socket): Update comment.
-
Paul Eggert authored
* alloc.c (make_number) [!defined make_number]: Remove, as lisp.h always defines this now. (mark_maybe_pointer): Simplify since USE_LSB_TAG is always defined now. (roundup_size): Verify that it is a power of 2. * data.c (Fmake_variable_buffer_local, Fmake_local_variable): * ftfont.c (ftfont_driver): Use LISP_INITIALLY_ZERO. * lisp.h (USE_LSB_TAG): Allow the builder to compile with -DUSE_LSB_TAG=0, to override the automatically-selected default. USE_LSB_TAG now is always defined to be either 0 or 1. All uses changed. (union Lisp_Object): Don't worry about WORDS_BIGENDIAN; the code works fine either way, and efficiency is not a concern here, as the union type is for debugging, not for production. (LISP_MAKE_RVALUE, make_number) [USE_LISP_UNION_TYPE]: Use an inline function on all platforms when using the union type, since this is simpler and 'static inline' can be used portably within Emacs now. (LISP_INITIALLY_ZERO): New macro. (XFASTINT, XSETFASTINT) [USE_LISP_UNION_TYPE]: Remove. (XSET) [USE_LISP_UNION_TYPE]: Don't overparenthesize.
-
- 30 May, 2012 1 commit
-
-
Paul Eggert authored
The following changes affect the code only when profiling. * dispnew.c (__executable_start): Rename from safe_bcopy. Define only on platforms that need it. * emacs.c: Include <sys/gmon.h> when profiling. (_mcleanup): Remove decl, since <sys/gmon.h> does it now. (__executable_start): Remove decl, since lisp.h does it now. (safe_bcopy): Remove decl; no longer has that name. (main): Coalesce #if into single bit of code, for simplicity. Cast pointers to uintptr_t, since standard libraries want integers and not pointers. * lisp.h (__executable_start): New decl.
-
- 07 Apr, 2012 1 commit
-
-
Eli Zaretskii authored
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.
-
- 11 Jan, 2012 1 commit
-
-
Glenn Morris authored
-
- 10 Jan, 2012 2 commits
-
-
Glenn Morris authored
For some reason, invocation-directory is also a function.
-
Glenn Morris authored
This confusingly-named variable is typically nil in an installed Emacs, and in an uninstalled Emacs points to the build directory, rather than eg the target installation directory. Yay.
-
- 05 Jan, 2012 2 commits
-
-
Glenn Morris authored
-
Glenn Morris authored
* etc/refcards/calccard.tex, etc/refcards/cs-dired-ref.tex: * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex: * etc/refcards/de-refcard.tex, etc/refcards/dired-ref.tex: * etc/refcards/fr-dired-ref.tex, etc/refcards/fr-refcard.tex: * etc/refcards/fr-survival.tex, etc/refcards/orgcard.tex: * etc/refcards/pl-refcard.tex, etc/refcards/pt-br-refcard.tex: * etc/refcards/refcard.tex, etc/refcards/ru-refcard.tex: * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex: * etc/refcards/sk-survival.tex, etc/refcards/survival.tex: * etc/refcards/vipcard.tex, etc/refcards/viperCard.tex: * lib-src/ebrowse.c (version) <emacs_copyright>: * lib-src/etags.c (print_version) <emacs_copyright>: * lib-src/rcs2log (Copyright): Update short copyright year to 2012. * nextstep/Cocoa/Emacs.base/Contents/Info.plist: * nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings: * nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist: * src/emacs.c (emacs_copyright): Update short copyright year to 2012.
-
- 21 Dec, 2011 1 commit
-
-
Jan Djärv authored
* emacs.c (ns_pool): New variable. (main): Assign ns_pool. (Fkill_emacs): Call ns_release_autorelease_pool. * nsfns.m (x_set_background_color): Assign return value from ns_index_color to face-background instead of NSColor*. (ns_implicitly_set_icon_type): Fix indentation. Change assignment in for loop to comparison. * nsfont.m (ns_spec_to_descriptor): Fix indentation, autorelease fdesc, release fdAttrs and tdict. (ns_get_covering_families): Release charset. (ns_findfonts): Release NSFontDescriptor created with new. (ns_uni_to_glyphs): Fix indentation. (setString): Release attrStr before assigning new value. * nsmenu.m (ns_update_menubar): Call free_menubar_widget_value_tree before returning. * nsterm.m (x_free_frame_resources): Release f->output_data.ns->miniimage (ns_index_color): Fix indentation. Do not retain color_table->colors[i].
-
- 12 Dec, 2011 1 commit
-
-
Paul Eggert authored
-
- 04 Dec, 2011 1 commit
-
-
Andreas Schwab authored
* emacs.c (Qkill_emacs): Define. (syms_of_emacs): Initialize it. * keyboard.c (interrupt_signal): Don't call Fkill_emacs here, set Qquit_flag to `kill-emacs' instead. (quit_throw_to_read_char): Add parameter `from_signal'. All callers changed. Call Fkill_emacs if requested and safe. * lisp.h (QUIT): Call Fkill_emacs if requested.
-
- 14 Nov, 2011 1 commit
-
-
Paul Eggert authored
-
- 28 Oct, 2011 1 commit
-
-
Eli Zaretskii authored
Thanks to oslsachem <oslsachem@gmail.com> for helping to debug this. src/w32font.c (g_b_init_is_w9x, g_b_init_get_outline_metrics_w) (g_b_init_get_text_metrics_w, g_b_init_get_glyph_outline_w) (g_b_init_get_glyph_outline_w): New static variables. (GetOutlineTextMetricsW_Proc, GetTextMetricsW_Proc) (GetGlyphOutlineW_Proc): New typedefs. (w32_load_unicows_or_gdi32, get_outline_metrics_w) (get_text_metrics_w, get_glyph_outline_w, globals_of_w32font): New functions. (w32font_open_internal, compute_metrics): Call get_outline_metrics_w, get_text_metrics_w, and get_glyph_outline_w instead of calling the "wide" APIs directly. src/emacs.c (main) [HAVE_NTGUI]: Call globals_of_w32font. src/w32.h (syms_of_w32font): Add prototype.
-
- 24 Sep, 2011 1 commit
-
-
Jim Meyering authored
The previous change was incomplete. While it makes emacs --batch detect the vast majority of stdout write failures, errors were still ignored whenever the output size is k * (BUFSIZ+1) - 4. E.g., on a system with BUFSIZ of 4096, $ emacs --batch --eval '(print (format "%4093d" 0))' > /dev/full \ && echo FAIL: ignored write error FAIL: ignored write error $ emacs --batch --eval '(print (format "%20481d" 0))' > /dev/full \ && echo FAIL: ignored write error FAIL: ignored write error * emacs.c (Fkill_emacs): Also test ferror. (Bug#9574)
-