aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJoakim Verona2012-05-31 19:54:01 +0200
committerJoakim Verona2012-05-31 19:54:01 +0200
commitfc1f1f2ea1ceac41f81855e14a490db107d88681 (patch)
tree853798b1704f9de86e02ad87d77f2b1e8d56dda8 /src
parent664e085984f192584c5b3c61495784a11d2ba6c1 (diff)
parent32d72c2f5d7554ee2f1d37bb8aa210ee07165f25 (diff)
downloademacs-fc1f1f2ea1ceac41f81855e14a490db107d88681.tar.gz
emacs-fc1f1f2ea1ceac41f81855e14a490db107d88681.zip
upstream
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog54
-rw-r--r--src/charset.c9
-rw-r--r--src/doc.c21
-rw-r--r--src/image.c6
-rw-r--r--src/keymap.c8
-rw-r--r--src/keymap.h2
-rw-r--r--src/ralloc.c7
-rw-r--r--src/s/hpux10-20.h6
-rw-r--r--src/search.c20
-rw-r--r--src/xdisp.c2
-rw-r--r--src/xfns.c8
-rw-r--r--src/xterm.c9
-rw-r--r--src/xterm.h2
13 files changed, 98 insertions, 56 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 767dfa47036..6d71346dd78 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,53 @@
12012-05-31 Paul Eggert <eggert@cs.ucla.edu>
2
3 Pacify gcc -Wdouble-precision when using Xaw.
4 * xterm.c (xaw_jump_callback, x_set_toolkit_scroll_bar_thumb)
5 [HAVE_X_WINDOWS && USE_TOOLKIT_SCROLL_BARS && !USE_MOTIF && !USE_GTK]:
6 Use 'float' consistently, rather than 'float' in most places
7 and 'double' in a couple of places.
8
92012-05-31 Eli Zaretskii <eliz@gnu.org>
10
11 * xdisp.c (handle_stop): Detect whether we have overlay strings
12 loaded by testing it->current.overlay_string_index to be
13 non-negative, instead of checking whether n_overlay_strings is
14 positive. (Bug#11587)
15
162012-05-31 Chong Yidong <cyd@gnu.org>
17
18 * keymap.c (describe_map_tree): Revert 2011-07-07 change (Bug#1169).
19
20 * doc.c (Fsubstitute_command_keys): Doc fix.
21
222012-05-31 Eli Zaretskii <eliz@gnu.org>
23
24 * search.c (search_buffer): Remove calls to
25 r_alloc_inhibit_buffer_relocation, as it is now called by
26 maybe_unify_char, which was the cause of relocation of buffer text
27 in bug#11519.
28
292012-05-31 Eli Zaretskii <eliz@gnu.org>
30
31 * charset.c (maybe_unify_char): Inhibit relocation of buffer text
32 for the duration of call to load_charset, to avoid problems with
33 callers of maybe_unify_char that access buffer text through C
34 pointers.
35
36 * ralloc.c (r_alloc_inhibit_buffer_relocation): Increment and
37 decrement the inhibition flag, instead of just setting or
38 resetting it.
39
402012-05-31 Paul Eggert <eggert@cs.ucla.edu>
41
42 Remove obsolete '#define static' cruft.
43 * s/hpux10-20.h (_FILE_OFFSET_BITS): Don't #undef.
44 This #undef was "temporary" in 2000; it is no longer needed
45 now that '#define static' has gone away.
46 * xfns.c, xterm.h (gray_bitmap_width, gray_bitmap_height)
47 (gray_bitmap_bits): Remove; no longer needed.
48 All uses replaced with definiens.
49 * xterm.c: Include "bitmaps/gray.xbm".
50
12012-05-30 Paul Eggert <eggert@cs.ucla.edu> 512012-05-30 Paul Eggert <eggert@cs.ucla.edu>
2 52
3 Clean up __executable_start, monstartup when --enable-profiling. 53 Clean up __executable_start, monstartup when --enable-profiling.
@@ -13,6 +63,10 @@
13 and not pointers. 63 and not pointers.
14 * lisp.h (__executable_start): New decl. 64 * lisp.h (__executable_start): New decl.
15 65
662012-05-31 Glenn Morris <rgm@gnu.org>
67
68 * image.c (Fimagemagick_types): Doc fix.
69
162012-05-30 Jim Meyering <meyering@redhat.com> 702012-05-30 Jim Meyering <meyering@redhat.com>
17 71
18 * callproc.c (Fcall_process_region): Include directory component 72 * callproc.c (Fcall_process_region): Include directory component
diff --git a/src/charset.c b/src/charset.c
index 6ecc8d2c4d1..8ce972ebf37 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1633,6 +1633,12 @@ maybe_unify_char (int c, Lisp_Object val)
1633 return c; 1633 return c;
1634 1634
1635 CHECK_CHARSET_GET_CHARSET (val, charset); 1635 CHECK_CHARSET_GET_CHARSET (val, charset);
1636#ifdef REL_ALLOC
1637 /* The call to load_charset below can allocate memory, which screws
1638 callers of this function through STRING_CHAR_* macros that hold C
1639 pointers to buffer text, if REL_ALLOC is used. */
1640 r_alloc_inhibit_buffer_relocation (1);
1641#endif
1636 load_charset (charset, 1); 1642 load_charset (charset, 1);
1637 if (! inhibit_load_charset_map) 1643 if (! inhibit_load_charset_map)
1638 { 1644 {
@@ -1648,6 +1654,9 @@ maybe_unify_char (int c, Lisp_Object val)
1648 if (unified > 0) 1654 if (unified > 0)
1649 c = unified; 1655 c = unified;
1650 } 1656 }
1657#ifdef REL_ALLOC
1658 r_alloc_inhibit_buffer_relocation (0);
1659#endif
1651 return c; 1660 return c;
1652} 1661}
1653 1662
diff --git a/src/doc.c b/src/doc.c
index bec20fb0d94..cd23d9266a2 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -705,18 +705,23 @@ the same file name is found in the `doc-directory'. */)
705DEFUN ("substitute-command-keys", Fsubstitute_command_keys, 705DEFUN ("substitute-command-keys", Fsubstitute_command_keys,
706 Ssubstitute_command_keys, 1, 1, 0, 706 Ssubstitute_command_keys, 1, 1, 0,
707 doc: /* Substitute key descriptions for command names in STRING. 707 doc: /* Substitute key descriptions for command names in STRING.
708Substrings of the form \\=\\[COMMAND] replaced by either: a keystroke 708Each substring of the form \\=\\[COMMAND] is replaced by either a
709sequence that will invoke COMMAND, or "M-x COMMAND" if COMMAND is not 709keystroke sequence that invokes COMMAND, or "M-x COMMAND" if COMMAND
710on any keys. 710is not on any keys.
711Substrings of the form \\=\\{MAPVAR} are replaced by summaries 711
712\(made by `describe-bindings') of the value of MAPVAR, taken as a keymap. 712Each substring of the form \\=\\{MAPVAR} is replaced by a summary of
713Substrings of the form \\=\\<MAPVAR> specify to use the value of MAPVAR 713the value of MAPVAR as a keymap. This summary is similar to the one
714produced by `describe-bindings'. The summary ends in two newlines
715\(used by the helper function `help-make-xrefs' to find the end of the
716summary).
717
718Each substring of the form \\=\\<MAPVAR> specifies the use of MAPVAR
714as the keymap for future \\=\\[COMMAND] substrings. 719as the keymap for future \\=\\[COMMAND] substrings.
715\\=\\= quotes the following character and is discarded; 720\\=\\= quotes the following character and is discarded;
716thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ into the output. 721thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ into the output.
717 722
718Returns original STRING if no substitutions were made. Otherwise, 723Return the original STRING if no substitutions are made.
719a new string, without any text properties, is returned. */) 724Otherwise, return a new string, without any text properties. */)
720 (Lisp_Object string) 725 (Lisp_Object string)
721{ 726{
722 char *buf; 727 char *buf;
diff --git a/src/image.c b/src/image.c
index a3b64b74997..b6cdb6c8290 100644
--- a/src/image.c
+++ b/src/image.c
@@ -1,5 +1,6 @@
1/* Functions for image support on window system. 1/* Functions for image support on window system.
2 Copyright (C) 1989, 1992-2012 Free Software Foundation, Inc. 2
3Copyright (C) 1989, 1992-2012 Free Software Foundation, Inc.
3 4
4This file is part of GNU Emacs. 5This file is part of GNU Emacs.
5 6
@@ -7987,7 +7988,8 @@ their descriptions (http://www.imagemagick.org/script/formats.php).
7987You can also try the shell command: `identify -list format'. 7988You can also try the shell command: `identify -list format'.
7988 7989
7989Note that ImageMagick recognizes many file-types that Emacs does not 7990Note that ImageMagick recognizes many file-types that Emacs does not
7990recognize as images, such as C. See `imagemagick-types-inhibit'. */) 7991recognize as images, such as C. See `imagemagick-types-enable'
7992and `imagemagick-types-inhibit'. */)
7991 (void) 7993 (void)
7992{ 7994{
7993 Lisp_Object typelist = Qnil; 7995 Lisp_Object typelist = Qnil;
diff --git a/src/keymap.c b/src/keymap.c
index 2a03dda5a5e..2f5558c171f 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -2996,9 +2996,9 @@ You type Translation\n\
2996 If MENTION_SHADOW is nonzero, then when something is shadowed by SHADOW, 2996 If MENTION_SHADOW is nonzero, then when something is shadowed by SHADOW,
2997 don't omit it; instead, mention it but say it is shadowed. 2997 don't omit it; instead, mention it but say it is shadowed.
2998 2998
2999 Return whether something was inserted or not. */ 2999 Any inserted text ends in two newlines (used by `help-make-xrefs'). */
3000 3000
3001int 3001void
3002describe_map_tree (Lisp_Object startmap, int partial, Lisp_Object shadow, 3002describe_map_tree (Lisp_Object startmap, int partial, Lisp_Object shadow,
3003 Lisp_Object prefix, const char *title, int nomenu, int transl, 3003 Lisp_Object prefix, const char *title, int nomenu, int transl,
3004 int always_title, int mention_shadow) 3004 int always_title, int mention_shadow)
@@ -3108,8 +3108,10 @@ key binding\n\
3108 skip: ; 3108 skip: ;
3109 } 3109 }
3110 3110
3111 if (something)
3112 insert_string ("\n");
3113
3111 UNGCPRO; 3114 UNGCPRO;
3112 return something;
3113} 3115}
3114 3116
3115static int previous_description_column; 3117static int previous_description_column;
diff --git a/src/keymap.h b/src/keymap.h
index 234ffce471d..d9334cda0f4 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -47,7 +47,7 @@ EXFUN (Fcurrent_active_maps, 2);
47extern Lisp_Object access_keymap (Lisp_Object, Lisp_Object, int, int, int); 47extern Lisp_Object access_keymap (Lisp_Object, Lisp_Object, int, int, int);
48extern Lisp_Object get_keymap (Lisp_Object, int, int); 48extern Lisp_Object get_keymap (Lisp_Object, int, int);
49EXFUN (Fset_keymap_parent, 2); 49EXFUN (Fset_keymap_parent, 2);
50extern int describe_map_tree (Lisp_Object, int, Lisp_Object, Lisp_Object, 50extern void describe_map_tree (Lisp_Object, int, Lisp_Object, Lisp_Object,
51 const char *, int, int, int, int); 51 const char *, int, int, int, int);
52extern ptrdiff_t current_minor_maps (Lisp_Object **, Lisp_Object **); 52extern ptrdiff_t current_minor_maps (Lisp_Object **, Lisp_Object **);
53extern void initial_define_key (Lisp_Object, int, const char *); 53extern void initial_define_key (Lisp_Object, int, const char *);
diff --git a/src/ralloc.c b/src/ralloc.c
index 7fdef69842a..19d15664eec 100644
--- a/src/ralloc.c
+++ b/src/ralloc.c
@@ -1142,7 +1142,12 @@ r_alloc_reset_variable (POINTER *old, POINTER *new)
1142void 1142void
1143r_alloc_inhibit_buffer_relocation (int inhibit) 1143r_alloc_inhibit_buffer_relocation (int inhibit)
1144{ 1144{
1145 use_relocatable_buffers = !inhibit; 1145 if (use_relocatable_buffers < 0)
1146 use_relocatable_buffers = 0;
1147 if (inhibit)
1148 use_relocatable_buffers++;
1149 else if (use_relocatable_buffers > 0)
1150 use_relocatable_buffers--;
1146} 1151}
1147 1152
1148 1153
diff --git a/src/s/hpux10-20.h b/src/s/hpux10-20.h
index 3e25b1bd0d9..f1ae50c533a 100644
--- a/src/s/hpux10-20.h
+++ b/src/s/hpux10-20.h
@@ -95,12 +95,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
95#define HAVE_XRMSETDATABASE 95#define HAVE_XRMSETDATABASE
96#endif 96#endif
97 97
98/* 2000-11-21: Temporarily disable Unix 98 large file support found by
99 configure. It fails on HPUX 11, at least, because it enables
100 header sections which lose when `static' is defined away, as it is
101 on HP-UX. (You get duplicate symbol errors on linking). */
102#undef _FILE_OFFSET_BITS
103
104/* Conservative garbage collection has not been tested, so for now 98/* Conservative garbage collection has not been tested, so for now
105 play it safe and stick with the old-fashioned way of marking. */ 99 play it safe and stick with the old-fashioned way of marking. */
106#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE 100#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE
diff --git a/src/search.c b/src/search.c
index 5608e344e75..99519b839ef 100644
--- a/src/search.c
+++ b/src/search.c
@@ -1160,24 +1160,12 @@ search_buffer (Lisp_Object string, ptrdiff_t pos, ptrdiff_t pos_byte,
1160 { 1160 {
1161 ptrdiff_t val; 1161 ptrdiff_t val;
1162 1162
1163#ifdef REL_ALLOC
1164 /* re_search_2 below is passed C pointers to buffer text.
1165 If some code called by it causes memory (re)allocation,
1166 buffer text could be relocated on platforms that use
1167 REL_ALLOC, which invalidates those C pointers. So we
1168 inhibit relocation of buffer text for as long as
1169 re_search_2 runs. */
1170 r_alloc_inhibit_buffer_relocation (1);
1171#endif
1172 val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2, 1163 val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2,
1173 pos_byte - BEGV_BYTE, lim_byte - pos_byte, 1164 pos_byte - BEGV_BYTE, lim_byte - pos_byte,
1174 (NILP (Vinhibit_changing_match_data) 1165 (NILP (Vinhibit_changing_match_data)
1175 ? &search_regs : &search_regs_1), 1166 ? &search_regs : &search_regs_1),
1176 /* Don't allow match past current point */ 1167 /* Don't allow match past current point */
1177 pos_byte - BEGV_BYTE); 1168 pos_byte - BEGV_BYTE);
1178#ifdef REL_ALLOC
1179 r_alloc_inhibit_buffer_relocation (0);
1180#endif
1181 if (val == -2) 1169 if (val == -2)
1182 { 1170 {
1183 matcher_overflow (); 1171 matcher_overflow ();
@@ -1217,19 +1205,11 @@ search_buffer (Lisp_Object string, ptrdiff_t pos, ptrdiff_t pos_byte,
1217 { 1205 {
1218 ptrdiff_t val; 1206 ptrdiff_t val;
1219 1207
1220#ifdef REL_ALLOC
1221 /* See commentary above for the reasons for inhibiting
1222 buffer text relocation here. */
1223 r_alloc_inhibit_buffer_relocation (1);
1224#endif
1225 val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2, 1208 val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2,
1226 pos_byte - BEGV_BYTE, lim_byte - pos_byte, 1209 pos_byte - BEGV_BYTE, lim_byte - pos_byte,
1227 (NILP (Vinhibit_changing_match_data) 1210 (NILP (Vinhibit_changing_match_data)
1228 ? &search_regs : &search_regs_1), 1211 ? &search_regs : &search_regs_1),
1229 lim_byte - BEGV_BYTE); 1212 lim_byte - BEGV_BYTE);
1230#ifdef REL_ALLOC
1231 r_alloc_inhibit_buffer_relocation (0);
1232#endif
1233 if (val == -2) 1213 if (val == -2)
1234 { 1214 {
1235 matcher_overflow (); 1215 matcher_overflow ();
diff --git a/src/xdisp.c b/src/xdisp.c
index 82dbe4beb3b..c8d2de7c9de 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -3175,7 +3175,7 @@ handle_stop (struct it *it)
3175 onto the stack one more time, which is not 3175 onto the stack one more time, which is not
3176 expected by the rest of the code that processes 3176 expected by the rest of the code that processes
3177 overlay strings. */ 3177 overlay strings. */
3178 || (it->n_overlay_strings <= 0 3178 || (it->current.overlay_string_index < 0
3179 ? !get_overlay_strings_1 (it, 0, 0) 3179 ? !get_overlay_strings_1 (it, 0, 0)
3180 : 0)) 3180 : 0))
3181 { 3181 {
diff --git a/src/xfns.c b/src/xfns.c
index 767507805fb..1f1d3d3ef0c 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -126,14 +126,6 @@ extern LWLIB_ID widget_id_tick;
126 126
127#define MAXREQUEST(dpy) (XMaxRequestSize (dpy)) 127#define MAXREQUEST(dpy) (XMaxRequestSize (dpy))
128 128
129/* The gray bitmap `bitmaps/gray'. This is done because xterm.c uses
130 it, and including `bitmaps/gray' more than once is a problem when
131 config.h defines `static' as an empty replacement string. */
132
133int gray_bitmap_width = gray_width;
134int gray_bitmap_height = gray_height;
135char *gray_bitmap_bits = gray_bits;
136
137/* Nonzero if using X. */ 129/* Nonzero if using X. */
138 130
139int x_in_use; 131int x_in_use;
diff --git a/src/xterm.c b/src/xterm.c
index b05544a6fca..442b6b1b934 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -142,6 +142,8 @@ extern void _XEditResCheckMessages (Widget, XtPointer, XEvent *, Boolean *);
142#endif 142#endif
143#endif 143#endif
144 144
145#include "bitmaps/gray.xbm"
146
145/* Default to using XIM if available. */ 147/* Default to using XIM if available. */
146#ifdef USE_XIM 148#ifdef USE_XIM
147int use_xim = 1; 149int use_xim = 1;
@@ -4536,7 +4538,7 @@ xaw_jump_callback (Widget widget, XtPointer client_data, XtPointer call_data)
4536 whole = 10000000; 4538 whole = 10000000;
4537 portion = shown < 1 ? top * whole : 0; 4539 portion = shown < 1 ? top * whole : 0;
4538 4540
4539 if (shown < 1 && (eabs (top + shown - 1) < 1.0/height)) 4541 if (shown < 1 && (eabs (top + shown - 1) < 1.0f / height))
4540 /* Some derivatives of Xaw refuse to shrink the thumb when you reach 4542 /* Some derivatives of Xaw refuse to shrink the thumb when you reach
4541 the bottom, so we force the scrolling whenever we see that we're 4543 the bottom, so we force the scrolling whenever we see that we're
4542 too close to the bottom (in x_set_toolkit_scroll_bar_thumb 4544 too close to the bottom (in x_set_toolkit_scroll_bar_thumb
@@ -4901,7 +4903,7 @@ x_set_toolkit_scroll_bar_thumb (struct scroll_bar *bar, int portion, int positio
4901 else 4903 else
4902 top = old_top; 4904 top = old_top;
4903 /* Keep two pixels available for moving the thumb down. */ 4905 /* Keep two pixels available for moving the thumb down. */
4904 shown = max (0, min (1 - top - (2.0 / height), shown)); 4906 shown = max (0, min (1 - top - (2.0f / height), shown));
4905 4907
4906 /* If the call to XawScrollbarSetThumb below doesn't seem to work, 4908 /* If the call to XawScrollbarSetThumb below doesn't seem to work,
4907 check that your system's configuration file contains a define 4909 check that your system's configuration file contains a define
@@ -10401,8 +10403,7 @@ x_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name)
10401 { 10403 {
10402 dpyinfo->gray 10404 dpyinfo->gray
10403 = XCreatePixmapFromBitmapData (dpyinfo->display, dpyinfo->root_window, 10405 = XCreatePixmapFromBitmapData (dpyinfo->display, dpyinfo->root_window,
10404 gray_bitmap_bits, 10406 gray_bits, gray_width, gray_height,
10405 gray_bitmap_width, gray_bitmap_height,
10406 1, 0, 1); 10407 1, 0, 1);
10407 } 10408 }
10408 10409
diff --git a/src/xterm.h b/src/xterm.h
index 8919b648371..68e0372b05a 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -939,8 +939,6 @@ void x_handle_property_notify (XPropertyEvent *);
939struct frame *check_x_frame (Lisp_Object); 939struct frame *check_x_frame (Lisp_Object);
940EXFUN (Fx_display_grayscale_p, 1); 940EXFUN (Fx_display_grayscale_p, 1);
941extern void x_free_gcs (struct frame *); 941extern void x_free_gcs (struct frame *);
942extern int gray_bitmap_width, gray_bitmap_height;
943extern char *gray_bitmap_bits;
944 942
945/* From xrdb.c. */ 943/* From xrdb.c. */
946 944