1. 27 Apr, 2011 4 commits
  2. 26 Apr, 2011 10 commits
  3. 25 Apr, 2011 10 commits
    • Paul Eggert's avatar
      Combine changelog entries. · f904488f
      Paul Eggert authored
      f904488f
    • Paul Eggert's avatar
    • Dan Nicolaescu's avatar
      Convert some function definitions to standard C. · f2d3ba6f
      Dan Nicolaescu authored
      * src/alloc.c (check_sblock, check_string_bytes)
      (check_string_free_list): Convert to standard C.
      f2d3ba6f
    • Paul Eggert's avatar
      * lisp.h: (XVECTOR_SIZE): Remove. All uses replaced with ASIZE. · 77b37c05
      Paul Eggert authored
      (ASIZE): Now contains previous implementation of XVECTOR_SIZE
      instead of invoking XVECTOR_SIZE.
      77b37c05
    • Paul Eggert's avatar
      * lisp.h: Say "vectorlike header" rather than "vector header. · b102ceb1
      Paul Eggert authored
      (struct vectorlike_header): Rename from struct vector_header.
      (XVECTORLIKE_HEADER_SIZE): Renamed from XVECTOR_HEADER_SIZE.
      All uses changed.
      b102ceb1
    • Ted Zlatanov's avatar
      Fix typo in GnuTLS W32 support. · 42ce4c63
      Ted Zlatanov authored
      * w32.c (emacs_gnutls_push): Fix typo.
      42ce4c63
    • Eli Zaretskii's avatar
      Avoid compilation warnings in gnutls.c on 64-bit hosts. · fb11d64d
      Eli Zaretskii authored
       src/gnutls.c (emacs_gnutls_handshake): Avoid compiler warnings about
       "cast to pointer from integer of different size".
      fb11d64d
    • Eli Zaretskii's avatar
      Improve doprnt and its use in verror. (Bug#8545) · 825cd63c
      Eli Zaretskii authored
       src/doprnt.c (doprnt): Document the set of format control sequences
       supported by the function.  Use SAFE_ALLOCA instead of always
       using `alloca'.
       src/eval.c (verror): Don't limit the buffer size at size_max-1, that
       is one byte too soon.  Don't use xrealloc; instead xfree and
       xmalloc anew.
      825cd63c
    • Paul Eggert's avatar
      lisp.h: Fix a problem with aliasing and vector headers. · eab3844f
      Paul Eggert authored
      GCC 4.6.0 optimizes based on type-based alias analysis.  For
      example, if b is of type struct buffer * and v of type struct
      Lisp_Vector *, then gcc -O2 was incorrectly assuming that &b->size
      != &v->size, and therefore "v->size = 1; b->size = 2; return
      v->size;" must therefore return 1.  This assumption is incorrect
      for Emacs, since it type-puns struct Lisp_Vector * with many other
      types.  To fix this problem, this patch adds a new type struct
      vector_header that documents the constraints on layout of vectors
      and pseudovectors, and helps optimizing compilers not get fooled
      by Emacs's type punning.  It also adds the macros XSETTYPED_PVECTYPE
      XSETTYPED_PSEUDOVECTOR, TYPED_PSEUDOVECTORP, for similar reasons.
      * lisp.h (XVECTOR_SIZE): New convenience macro.  All previous uses of
      XVECTOR (foo)->size replaced to use this macro, to avoid the hassle
      of writing XVECTOR (foo)->header.size.
      (XVECTOR_HEADER_SIZE): New macro, for use in XSETPSEUDOVECTOR.
      (XSETTYPED_PVECTYPE): New macro, specifying the name of the size
      member.
      (XSETPVECTYPE): Rewrite in terms of new macro.
      (XSETPVECTYPESIZE): New macro, specifying both type and size.
      This is a bit clearer, and further avoids the possibility of
      undesirable aliasing.
      (XSETTYPED_PSEUDOVECTOR): New macro, specifying the size.
      (XSETPSEUDOVECTOR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR
      and XVECTOR_HEADER_SIZE.
      (XSETSUBR): Rewrite in terms of XSETTYPED_PSEUDOVECTOR and XSIZE,
      since Lisp_Subr is a special case (no "next" field).
      (ASIZE): Rewrite in terms of XVECTOR_SIZE.
      (struct vector_header): New type.
      (TYPED_PSEUDOVECTORP): New macro, also specifying the C type of the
      object, to help avoid aliasing.
      (PSEUDOVECTORP): Rewrite in terms of TYPED_PSEUDOVECTORP.
      (SUBRP): Likewise, since Lisp_Subr is a special case.
      * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table):
      (struct Lisp_Sub_Char_Table, struct Lisp_Bool_Vector):
      (struct Lisp_Hash_Table): Combine first two members into a single
      struct vector_header member.  All uses of "size" and "next" members
      changed to be "header.size" and "header.next".
      * buffer.h (struct buffer): Likewise.
      * font.h (struct font_spec, struct font_entity, struct font): Likewise.
      * frame.h (struct frame): Likewise.
      * process.h (struct Lisp_Process): Likewise.
      * termhooks.h (struct terminal): Likewise.
      * window.c (struct save_window_data, struct saved_window): Likewise.
      * window.h (struct window): Likewise.
      * alloc.c (allocate_buffer, Fmake_bool_vector, allocate_pseudovector):
      Use XSETPVECTYPESIZE, not XSETPVECTYPE, to avoid aliasing problems.
      * buffer.c (init_buffer_once): Likewise.
      * lread.c (defsubr): Use XSETTYPED_PVECTYPE, since Lisp_Subr is a
      special case.
      * process.c (Fformat_network_address): Use local var for size,
      for brevity.
      eab3844f
    • Ted Zlatanov's avatar
      Add GnuTLS support for W32 and certificate and hostname verification in GnuTLS. · e061a11b
      Ted Zlatanov authored
      * src/gnutls.c: Renamed global_initialized to
      gnutls_global_initialized.  Added internals for the
      :verify-hostname-error, :verify-error, and :verify-flags
      parameters of `gnutls-boot' and documented those parameters in the
      docstring.  Start callback support.
      (emacs_gnutls_handshake): Add Woe32 support. Retry handshake
      unless a fatal error occured. Call gnutls_alert_send_appropriate
      on error. Return error code.
      (emacs_gnutls_write): Call emacs_gnutls_handle_error.
      (emacs_gnutls_read): Likewise.
      (Fgnutls_boot): Return handshake error code.
      (emacs_gnutls_handle_error): New function.
      (wsaerror_to_errno): Likewise.
      
      * src/gnutls.h: Add GNUTLS_STAGE_CALLBACKS enum to denote we're in the
      callbacks stage.
      
      * src/w32.c (emacs_gnutls_pull): New function for GnuTLS on Woe32.
      (emacs_gnutls_push): Likewise.
      
      * src/w32.h (emacs_gnutls_pull): Add prototype.
      (emacs_gnutls_push): Likewise.
      e061a11b
  4. 24 Apr, 2011 7 commits
    • Eli Zaretskii's avatar
      Minor cleanup in src/xdisp.c. · eb35682e
      Eli Zaretskii authored
       src/xdisp.c (handle_single_display_spec): Rename the
       display_replaced_before_p argument into display_replaced_p, to
       make it consistent with the commentary.  Fix typos in the
       commentary.
      eb35682e
    • Eli Zaretskii's avatar
      Minor cleanup in src/textprop.c. · e2ad650c
      Eli Zaretskii authored
       src/textprop.c (syms_of_textprop): Remove dead code.
       (copy_text_properties): Delete obsolete commentary about an
       interface that was deleted long ago.  Fix typos in the description
       of arguments.
      e2ad650c
    • Eli Zaretskii's avatar
      Repair the MSDOS build following latest changes. · 1b2de274
      Eli Zaretskii authored
       msdos/sedlibmk.inp (am_libgnu_a_OBJECTS): Edit out
       allocator.$(OBJEXT).  Add editing for the new GNULIB_* and
       REPLACE_* variables.
       src/msdos.c (XMenuActivate, XMenuAddSelection): Adjust argument list
       to changes in oldXMenu/XMenu.h from 2011-04-16.
       <menu_help_message, prev_menu_help_message>: Constify.
       (IT_menu_make_room): menu->help_text is now `const char **';
       adjust.
       src/msdos.h (XMenuActivate, XMenuAddSelection): Adjust prototypes
       to changes in oldXMenu/XMenu.h from 2011-04-16.
       (struct XMenu): Declare `help_text' `const char **'.
       src/xfaces.c <Qunspecified>: Make extern again.
       src/syntax.c: Include sys/types.h before including regex.h, as
       required by Posix.
      1b2de274
    • Eli Zaretskii's avatar
      Fallout from resurrecting doprnt. · 762b15be
      Eli Zaretskii authored
       src/doc.c (get_doc_string): Improve the format passed to `error'.
       src/doprnt.c (doprnt): Improve commentary.
       src/term.c (init_tty) [MSDOS]: Fix 1st argument to maybe_fatal.
       src/Makefile.in (TAGS): Depend on $(M_FILE) and $(S_FILE), and scan
       them with etags.
       src/makefile.w32-in (TAGS): Depend on $(CURDIR)/m/intel386.h and
       $(CURDIR)/s/ms-w32.h.
       (TAGS-gmake): Scan $(CURDIR)/m/intel386.h and $(CURDIR)/s/ms-w32.h.
      762b15be
    • Eli Zaretskii's avatar
      Fix a minor bug in src/makefile.w32-in. · f1052e5d
      Eli Zaretskii authored
       src/makefile.w32-in (globals.h): Add a dummy recipe, to make any
       changes in globals.h immediately force recompilation.
      f1052e5d
    • Eli Zaretskii's avatar
      Delete char-direction-table and char-direction. · fa6996bc
      Eli Zaretskii authored
       See http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00675.html
       for the reasons.
      
       src/character.c (Fchar_direction): Function deleted.
       (syms_of_character): Don't defsubr it.
       <char-direction-table>: Deleted.
       etc/NEWS: Document the removal.
      fa6996bc
    • Paul Eggert's avatar
  5. 23 Apr, 2011 1 commit
    • Eli Zaretskii's avatar
      Fix doprnt so it could be used safely in `verror'. (Bug#8435) · e6c3da20
      Eli Zaretskii authored
       src/doprnt.c: Include limits.h.
       (SIZE_MAX): New macro.
       (doprnt): Return a size_t value.  2nd arg is now size_t.  Many
       local variables are now size_t instead of int or unsigned.
       Improve overflow protection.  Support `l' modifier for integer
       conversions.  Support %l conversion.  Don't assume an EMACS_INT
       argument for integer conversions and for %c.
       src/lisp.h (doprnt): Restore prototype.
       src/makefile.w32-in ($(BLD)/callint.$(O)): Depend on
       $(SRC)/character.h.
       src/Makefile.in (base_obj): Add back doprnt.o.
       src/deps.mk (doprnt.o): Add back prerequisites.
       (callint.o): Depend on character.h.
       src/eval.c (internal_lisp_condition_case): Include the handler
       representation in the error message.
       (verror): Call doprnt instead of vsnprintf.  Fix an off-by-one bug
       when breaking from the loop.
       src/xdisp.c (vmessage): Call doprnt instead of vsnprintf.
       src/callint.c (Fcall_interactively): When displaying error message
       about invalid control letter, pass the character's codepoint, not
       a pointer to its multibyte form.  Improve display of the character
       in octal and display also its hex code.
       src/character.c (char_string): Use %x to display the (unsigned)
       codepoint of an invalid character, to avoid displaying a bogus
       negative value.
       src/font.c (check_otf_features): Pass SDATA of SYMBOL_NAME to
       `error', not SYMBOL_NAME itself.
       src/coding.c (Fencode_sjis_char, Fencode_big5_char): Use %c for
       character arguments to `error'.
       src/charset.c (check_iso_charset_parameter): Fix incorrect argument
       to `error' in error message about FINAL_CHAR argument.  Make sure
       FINAL_CHAR is a character, and use %c when it is passed as
       argument to `error'.
      e6c3da20
  6. 21 Apr, 2011 3 commits
  7. 20 Apr, 2011 5 commits