diff options
| author | Richard M. Stallman | 2002-09-26 22:03:41 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 2002-09-26 22:03:41 +0000 |
| commit | cf3b32fcfbf0e6dfd3714d527a9d2ab4ae0b0dda (patch) | |
| tree | c39c1c63f7528efe7ed2a6a5cf884b297cbb4892 /src/coding.c | |
| parent | 5eba27ea0de234d0f5c6fbae1276c25c448f99fa (diff) | |
| download | emacs-cf3b32fcfbf0e6dfd3714d527a9d2ab4ae0b0dda.tar.gz emacs-cf3b32fcfbf0e6dfd3714d527a9d2ab4ae0b0dda.zip | |
(run_pre_post_conversion_on_str): Save and restore Vdeactivate_mark.
Diffstat (limited to 'src/coding.c')
| -rw-r--r-- | src/coding.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/coding.c b/src/coding.c index 5b7856959a6..0bb2bd3fcd8 100644 --- a/src/coding.c +++ b/src/coding.c | |||
| @@ -5815,14 +5815,17 @@ run_pre_post_conversion_on_str (str, coding, encodep) | |||
| 5815 | int encodep; | 5815 | int encodep; |
| 5816 | { | 5816 | { |
| 5817 | int count = SPECPDL_INDEX (); | 5817 | int count = SPECPDL_INDEX (); |
| 5818 | struct gcpro gcpro1; | 5818 | struct gcpro gcpro1, gcpro2; |
| 5819 | int multibyte = STRING_MULTIBYTE (str); | 5819 | int multibyte = STRING_MULTIBYTE (str); |
| 5820 | Lisp_Object buffer; | 5820 | Lisp_Object buffer; |
| 5821 | struct buffer *buf; | 5821 | struct buffer *buf; |
| 5822 | Lisp_Object old_deactivate_mark; | ||
| 5822 | 5823 | ||
| 5823 | record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); | 5824 | record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); |
| 5824 | record_unwind_protect (code_convert_region_unwind, Qnil); | 5825 | record_unwind_protect (code_convert_region_unwind, Qnil); |
| 5825 | GCPRO1 (str); | 5826 | /* It is not crucial to specbind this. */ |
| 5827 | old_deactivate_mark = Vdeactivate_mark; | ||
| 5828 | GCPRO2 (str, old_deactivate_mark); | ||
| 5826 | 5829 | ||
| 5827 | buffer = Fget_buffer_create (build_string (" *code-converting-work*")); | 5830 | buffer = Fget_buffer_create (build_string (" *code-converting-work*")); |
| 5828 | buf = XBUFFER (buffer); | 5831 | buf = XBUFFER (buffer); |
| @@ -5853,6 +5856,7 @@ run_pre_post_conversion_on_str (str, coding, encodep) | |||
| 5853 | call1 (coding->post_read_conversion, make_number (Z - BEG)); | 5856 | call1 (coding->post_read_conversion, make_number (Z - BEG)); |
| 5854 | } | 5857 | } |
| 5855 | inhibit_pre_post_conversion = 0; | 5858 | inhibit_pre_post_conversion = 0; |
| 5859 | Vdeactivate_mark = old_deactivate_mark; | ||
| 5856 | str = make_buffer_string (BEG, Z, 1); | 5860 | str = make_buffer_string (BEG, Z, 1); |
| 5857 | return unbind_to (count, str); | 5861 | return unbind_to (count, str); |
| 5858 | } | 5862 | } |