diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 19 | ||||
| -rw-r--r-- | src/buffer.c | 14 | ||||
| -rw-r--r-- | src/doc.c | 6 | ||||
| -rw-r--r-- | src/image.c | 23 | ||||
| -rw-r--r-- | src/xfaces.c | 2 |
5 files changed, 49 insertions, 15 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 2353cc1eca2..71af862cdac 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,22 @@ | |||
| 1 | 2012-02-07 Chong Yidong <cyd@gnu.org> | ||
| 2 | |||
| 3 | * buffer.c (Fbuffer_local_variables) | ||
| 4 | (buffer_lisp_local_variables): Handle unbound vars correctly; | ||
| 5 | don't let Qunbound leak into Lisp. | ||
| 6 | |||
| 7 | 2012-02-07 Glenn Morris <rgm@gnu.org> | ||
| 8 | |||
| 9 | * image.c (Fimagemagick_types): Doc fix. | ||
| 10 | |||
| 11 | * image.c (imagemagick-render-type): Change it from a lisp object | ||
| 12 | to an integer. Move the doc here from the lisp manual. | ||
| 13 | Treat all values not equal to 0 the same. | ||
| 14 | |||
| 15 | 2012-02-06 Chong Yidong <cyd@gnu.org> | ||
| 16 | |||
| 17 | * doc.c (store_function_docstring): Avoid applying docstring of | ||
| 18 | alias to base function (Bug#2603). | ||
| 19 | |||
| 1 | 2012-02-04 Andreas Schwab <schwab@linux-m68k.org> | 20 | 2012-02-04 Andreas Schwab <schwab@linux-m68k.org> |
| 2 | 21 | ||
| 3 | * .gdbinit (pp1, pv1): Remove redundant defines. | 22 | * .gdbinit (pp1, pv1): Remove redundant defines. |
diff --git a/src/buffer.c b/src/buffer.c index 01418956c8d..a6f61a1936a 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -1022,7 +1022,10 @@ buffer_lisp_local_variables (struct buffer *buf) | |||
| 1022 | if (buf != current_buffer) | 1022 | if (buf != current_buffer) |
| 1023 | val = XCDR (elt); | 1023 | val = XCDR (elt); |
| 1024 | 1024 | ||
| 1025 | result = Fcons (Fcons (XCAR (elt), val), result); | 1025 | result = Fcons (EQ (val, Qunbound) |
| 1026 | ? XCAR (elt) | ||
| 1027 | : Fcons (XCAR (elt), val), | ||
| 1028 | result); | ||
| 1026 | } | 1029 | } |
| 1027 | 1030 | ||
| 1028 | return result; | 1031 | return result; |
| @@ -1064,9 +1067,12 @@ No argument or nil as argument means use current buffer as BUFFER. */) | |||
| 1064 | idx = PER_BUFFER_IDX (offset); | 1067 | idx = PER_BUFFER_IDX (offset); |
| 1065 | if ((idx == -1 || PER_BUFFER_VALUE_P (buf, idx)) | 1068 | if ((idx == -1 || PER_BUFFER_VALUE_P (buf, idx)) |
| 1066 | && SYMBOLP (PER_BUFFER_SYMBOL (offset))) | 1069 | && SYMBOLP (PER_BUFFER_SYMBOL (offset))) |
| 1067 | result = Fcons (Fcons (PER_BUFFER_SYMBOL (offset), | 1070 | { |
| 1068 | PER_BUFFER_VALUE (buf, offset)), | 1071 | Lisp_Object sym = PER_BUFFER_SYMBOL (offset); |
| 1069 | result); | 1072 | Lisp_Object val = PER_BUFFER_VALUE (buf, offset); |
| 1073 | result = Fcons (EQ (val, Qunbound) ? sym : Fcons (sym, val), | ||
| 1074 | result); | ||
| 1075 | } | ||
| 1070 | } | 1076 | } |
| 1071 | } | 1077 | } |
| 1072 | 1078 | ||
| @@ -502,10 +502,12 @@ aren't strings. */) | |||
| 502 | /* Scanning the DOC files and placing docstring offsets into functions. */ | 502 | /* Scanning the DOC files and placing docstring offsets into functions. */ |
| 503 | 503 | ||
| 504 | static void | 504 | static void |
| 505 | store_function_docstring (Lisp_Object fun, EMACS_INT offset) | 505 | store_function_docstring (Lisp_Object obj, EMACS_INT offset) |
| 506 | /* Use EMACS_INT because we get offset from pointer subtraction. */ | 506 | /* Use EMACS_INT because we get offset from pointer subtraction. */ |
| 507 | { | 507 | { |
| 508 | fun = indirect_function (fun); | 508 | /* Don't use indirect_function here, or defaliases will apply their |
| 509 | docstrings to the base functions (Bug#2603). */ | ||
| 510 | Lisp_Object fun = SYMBOLP (obj) ? XSYMBOL (obj)->function : obj; | ||
| 509 | 511 | ||
| 510 | /* The type determines where the docstring is stored. */ | 512 | /* The type determines where the docstring is stored. */ |
| 511 | 513 | ||
diff --git a/src/image.c b/src/image.c index f4def3e681e..b2951dd70fb 100644 --- a/src/image.c +++ b/src/image.c | |||
| @@ -7617,7 +7617,6 @@ imagemagick_load_image (struct frame *f, struct image *img, | |||
| 7617 | EMACS_INT ino; | 7617 | EMACS_INT ino; |
| 7618 | int desired_width, desired_height; | 7618 | int desired_width, desired_height; |
| 7619 | double rotation; | 7619 | double rotation; |
| 7620 | EMACS_INT imagemagick_rendermethod; | ||
| 7621 | int pixelwidth; | 7620 | int pixelwidth; |
| 7622 | ImageInfo *image_info; | 7621 | ImageInfo *image_info; |
| 7623 | ExceptionInfo *exception; | 7622 | ExceptionInfo *exception; |
| @@ -7798,9 +7797,8 @@ imagemagick_load_image (struct frame *f, struct image *img, | |||
| 7798 | went ok. */ | 7797 | went ok. */ |
| 7799 | 7798 | ||
| 7800 | init_color_table (); | 7799 | init_color_table (); |
| 7801 | imagemagick_rendermethod = (INTEGERP (Vimagemagick_render_type) | 7800 | |
| 7802 | ? XINT (Vimagemagick_render_type) : 0); | 7801 | if (imagemagick_render_type == 0) |
| 7803 | if (imagemagick_rendermethod == 0) | ||
| 7804 | { | 7802 | { |
| 7805 | size_t image_height; | 7803 | size_t image_height; |
| 7806 | 7804 | ||
| @@ -7850,8 +7848,7 @@ imagemagick_load_image (struct frame *f, struct image *img, | |||
| 7850 | } | 7848 | } |
| 7851 | DestroyPixelIterator (iterator); | 7849 | DestroyPixelIterator (iterator); |
| 7852 | } | 7850 | } |
| 7853 | 7851 | else /* imagemagick_render_type != 0 */ | |
| 7854 | if (imagemagick_rendermethod == 1) | ||
| 7855 | { | 7852 | { |
| 7856 | /* Magicexportimage is normally faster than pixelpushing. This | 7853 | /* Magicexportimage is normally faster than pixelpushing. This |
| 7857 | method is also well tested. Some aspects of this method are | 7854 | method is also well tested. Some aspects of this method are |
| @@ -7986,6 +7983,7 @@ DEFUN ("imagemagick-types", Fimagemagick_types, Simagemagick_types, 0, 0, 0, | |||
| 7986 | Each entry in this list is a symbol named after an ImageMagick format | 7983 | Each entry in this list is a symbol named after an ImageMagick format |
| 7987 | tag. See the ImageMagick manual for a list of ImageMagick formats and | 7984 | tag. See the ImageMagick manual for a list of ImageMagick formats and |
| 7988 | their descriptions (http://www.imagemagick.org/script/formats.php). | 7985 | their descriptions (http://www.imagemagick.org/script/formats.php). |
| 7986 | You can also try the shell command: `identify -list format'. | ||
| 7989 | 7987 | ||
| 7990 | Note that ImageMagick recognizes many file-types that Emacs does not | 7988 | Note that ImageMagick recognizes many file-types that Emacs does not |
| 7991 | recognize as images, such as C. See `imagemagick-types-inhibit'. */) | 7989 | recognize as images, such as C. See `imagemagick-types-inhibit'. */) |
| @@ -8958,8 +8956,17 @@ The value can also be nil, meaning the cache is never cleared. | |||
| 8958 | The function `clear-image-cache' disregards this variable. */); | 8956 | The function `clear-image-cache' disregards this variable. */); |
| 8959 | Vimage_cache_eviction_delay = make_number (300); | 8957 | Vimage_cache_eviction_delay = make_number (300); |
| 8960 | #ifdef HAVE_IMAGEMAGICK | 8958 | #ifdef HAVE_IMAGEMAGICK |
| 8961 | DEFVAR_LISP ("imagemagick-render-type", Vimagemagick_render_type, | 8959 | DEFVAR_INT ("imagemagick-render-type", imagemagick_render_type, |
| 8962 | doc: /* Choose between ImageMagick render methods. */); | 8960 | doc: /* Integer indicating which ImageMagick rendering method to use. |
| 8961 | The options are: | ||
| 8962 | 0 -- the default method (pixel pushing) | ||
| 8963 | 1 -- a newer method ("MagickExportImagePixels") that may perform | ||
| 8964 | better (speed etc) in some cases, but has not been as thoroughly | ||
| 8965 | tested with Emacs as the default method. This method requires | ||
| 8966 | ImageMagick version 6.4.6 (approximately) or later. | ||
| 8967 | */); | ||
| 8968 | /* MagickExportImagePixels is in 6.4.6-9, but not 6.4.4-10. */ | ||
| 8969 | imagemagick_render_type = 0; | ||
| 8963 | #endif | 8970 | #endif |
| 8964 | 8971 | ||
| 8965 | } | 8972 | } |
diff --git a/src/xfaces.c b/src/xfaces.c index 617097d056b..bcb04188aeb 100644 --- a/src/xfaces.c +++ b/src/xfaces.c | |||
| @@ -3360,7 +3360,7 @@ update_face_from_frame_parameter (struct frame *f, Lisp_Object param, | |||
| 3360 | 3360 | ||
| 3361 | /* Changing the background color might change the background | 3361 | /* Changing the background color might change the background |
| 3362 | mode, so that we have to load new defface specs. | 3362 | mode, so that we have to load new defface specs. |
| 3363 | Call frame-update-face-colors to do that. */ | 3363 | Call frame-set-background-mode to do that. */ |
| 3364 | XSETFRAME (frame, f); | 3364 | XSETFRAME (frame, f); |
| 3365 | call1 (Qframe_set_background_mode, frame); | 3365 | call1 (Qframe_set_background_mode, frame); |
| 3366 | 3366 | ||