aboutsummaryrefslogtreecommitdiffstats
path: root/src/editfns.c
diff options
context:
space:
mode:
authorTom Tromey2011-02-14 08:39:19 -0700
committerTom Tromey2011-02-14 08:39:19 -0700
commit5d8ea1203d1e659bc77d953784a85a6e7da0ce95 (patch)
tree1da71b86f9592b2f3390f0cd4d30ce41e74fbb55 /src/editfns.c
parent42f6055717e74ea9541c5cf6fd0fc6501bd907fd (diff)
downloademacs-5d8ea1203d1e659bc77d953784a85a6e7da0ce95.tar.gz
emacs-5d8ea1203d1e659bc77d953784a85a6e7da0ce95.zip
Hide implementation of `struct buffer'
* composite.c (fill_gstring_header) (composition_compute_stop_pos, composition_adjust_point) (Ffind_composition_internal): Use B_. * intervals.c (set_point_both, get_local_map): Use B_. * callproc.c (Fcall_process, Fcall_process_region): Use B_. * process.c (get_process, list_processes_1, Fstart_process) (Fmake_serial_process, Fmake_network_process) (read_process_output, send_process, exec_sentinel) (status_notify, setup_process_coding_systems): Use B_. * bytecode.c (Fbyte_code): Use B_. * syntax.c (update_syntax_table, dec_bytepos, Fsyntax_table) (Fset_syntax_table, Fmodify_syntax_entry, skip_chars) (skip_syntaxes, scan_lists): Use B_. * lread.c (readchar, unreadchar, openp, readevalloop) (Feval_buffer, Feval_region): Use B_. * print.c (printchar, strout, print_string, PRINTDECLARE) (PRINTPREPARE, PRINTFINISH, temp_output_buffer_setup) (print_object): Use B_. * font.c (font_at): Use B_. * fns.c (Fbase64_encode_region, Fbase64_decode_region, Fmd5): Use B_. * callint.c (check_mark, Fcall_interactively): Use B_. * editfns.c (region_limit, Fmark_marker, save_excursion_save) (save_excursion_restore, Fprevious_char, Fchar_before) (general_insert_function, Finsert_char, Finsert_byte) (make_buffer_string_both, Finsert_buffer_substring) (Fcompare_buffer_substrings, subst_char_in_region_unwind) (subst_char_in_region_unwind_1, Fsubst_char_in_region) (Ftranslate_region_internal, save_restriction_restore) (Fchar_equal): Use B_. * data.c (swap_in_symval_forwarding, set_internal) (Fmake_local_variable, Fkill_local_variable, Flocal_variable_p): Use B_. * undo.c (record_point, record_insert, record_delete) (record_marker_adjustment, record_first_change) (record_property_change, Fundo_boundary, truncate_undo_list) (Fprimitive_undo): Use B_. * search.c (compile_pattern_1, compile_pattern, looking_at_1) (string_match_1, fast_looking_at, newline_cache_on_off) (search_command, search_buffer, simple_search, boyer_moore) (Freplace_match): Use B_. * indent.c (buffer_display_table, recompute_width_table) (width_run_cache_on_off, current_column, scan_for_column) (Findent_to, position_indentation, compute_motion, vmotion): Use B_. * casefiddle.c (casify_object, casify_region): Use B_. * casetab.c (Fcurrent_case_table, set_case_table): Use B_. * cmds.c (Fself_insert_command, internal_self_insert): Use B_. * fileio.c (Fexpand_file_name, Ffile_directory_p) (Ffile_regular_p, Ffile_selinux_context) (Fset_file_selinux_context, Ffile_modes, Fset_file_modes) (Fset_file_times, Ffile_newer_than_file_p, decide_coding_unwind) (Finsert_file_contents, choose_write_coding_system) (Fwrite_region, build_annotations, Fverify_visited_file_modtime) (Fset_visited_file_modtime, auto_save_error, auto_save_1) (Fdo_auto_save, Fset_buffer_auto_saved): Use B_. * minibuf.c (read_minibuf, get_minibuffer, Fread_buffer): Use B_. * marker.c (Fmarker_buffer, Fset_marker, set_marker_restricted) (set_marker_both, set_marker_restricted_both, unchain_marker): Use B_. * insdel.c (check_markers, insert_char, insert_1_both) (insert_from_string_1, insert_from_gap, insert_from_buffer_1) (adjust_after_replace, replace_range, del_range_2) (modify_region, prepare_to_modify_buffer) (Fcombine_after_change_execute): Use B_. * filelock.c (unlock_all_files, Flock_buffer, Funlock_buffer) (unlock_buffer): Use B_. * keymap.c (Flocal_key_binding, Fuse_local_map) (Fcurrent_local_map, push_key_description) (Fdescribe_buffer_bindings): Use B_. * keyboard.c (command_loop_1, read_char_minibuf_menu_prompt) (read_key_sequence): Use B_. * fringe.c (get_logical_cursor_bitmap) (get_logical_fringe_bitmap, update_window_fringes): Use B_. * xfns.c (x_create_tip_frame, Fx_show_tip): Use B_. * xfaces.c (compute_char_face): Use B_. * character.c (chars_in_text, Fget_byte): Use B_. * category.c (check_category_table, Fcategory_table) (Fset_category_table, char_category_set): Use B_. * coding.c (decode_coding, encode_coding) (make_conversion_work_buffer, decode_coding_gap) (decode_coding_object, encode_coding_object) (Fdetect_coding_region, Ffind_coding_systems_region_internal) (Funencodable_char_position, Fcheck_coding_systems_region): Use B_. * charset.c (Ffind_charset_region): Use B_. * window.c (window_display_table, unshow_buffer, window_loop) (window_min_size_2, set_window_buffer, Fset_window_buffer) (select_window, Fforce_window_update, temp_output_buffer_show) (Fset_window_configuration, save_window_save): Use B_. * xdisp.c (pos_visible_p, init_iterator, reseat_1) (message_dolog, update_echo_area, ensure_echo_area_buffers) (with_echo_area_buffer, setup_echo_area_for_printing) (set_message_1, update_menu_bar, update_tool_bar) (text_outside_line_unchanged_p, redisplay_internal) (try_scrolling, try_cursor_movement, redisplay_window) (try_window_reusing_current_matrix, row_containing_pos) (try_window_id, get_overlay_arrow_glyph_row, display_line) (Fcurrent_bidi_paragraph_direction, display_mode_lines) (decode_mode_spec_coding, decode_mode_spec, display_count_lines) (get_window_cursor_type, note_mouse_highlight): Use B_. * frame.c (make_frame_visible_1): Use B_. * dispnew.c (Fframe_or_buffer_changed_p): Use B_. * dispextern.h (WINDOW_WANTS_HEADER_LINE_P) (WINDOW_WANTS_MODELINE_P): Use B_. * syntax.h (Vstandard_syntax_table): Update. (CURRENT_SYNTAX_TABLE, SETUP_BUFFER_SYNTAX_TABLE): Use B_. * intervals.h (TEXT_PROP_MEANS_INVISIBLE): Update. (TEXT_PROP_MEANS_INVISIBLE): Use B_. * character.h (FETCH_CHAR_ADVANCE): Update. (INC_BOTH, ASCII_CHAR_WIDTH, DEC_BOTH): Use B_. * category.h (Vstandard_category_table): Update. * lisp.h (DEFVAR_BUFFER_DEFAULTS): Update for change to field names. (DOWNCASE_TABLE, UPCASE_TABLE): Use B_. * buffer.c (swapfield_): New macro. (Fbuffer_swap_text): Use swapfield_ where appropriate. (Fbuffer_live_p, Fget_file_buffer, get_truename_buffer) (Fget_buffer_create, clone_per_buffer_values) (Fmake_indirect_buffer, reset_buffer) (reset_buffer_local_variables, Fbuffer_name, Fbuffer_file_name) (Fbuffer_local_value, buffer_lisp_local_variables) (Fset_buffer_modified_p, Frestore_buffer_modified_p) (Frename_buffer, Fother_buffer, Fbuffer_enable_undo) (Fkill_buffer, Fset_buffer_major_mode, set_buffer_internal_1) (set_buffer_temp, Fset_buffer, set_buffer_if_live) (Fbarf_if_buffer_read_only, Fbury_buffer, Ferase_buffer) (Fbuffer_swap_text, Fset_buffer_multibyte) (swap_out_buffer_local_variables, record_overlay_string) (overlay_strings, init_buffer_once, init_buffer, syms_of_buffer): Use B_. * buffer.h (struct buffer): Rename all Lisp_Object fields. (BUFFER_INTERNAL_FIELD, B_): New macro. (FETCH_CHAR, FETCH_CHAR_AS_MULTIBYTE): Use B_.
Diffstat (limited to 'src/editfns.c')
-rw-r--r--src/editfns.c74
1 files changed, 37 insertions, 37 deletions
diff --git a/src/editfns.c b/src/editfns.c
index 30acc36f025..a3de4907efc 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -306,10 +306,10 @@ region_limit (int beginningp)
306 306
307 if (!NILP (Vtransient_mark_mode) 307 if (!NILP (Vtransient_mark_mode)
308 && NILP (Vmark_even_if_inactive) 308 && NILP (Vmark_even_if_inactive)
309 && NILP (current_buffer->mark_active)) 309 && NILP (B_ (current_buffer, mark_active)))
310 xsignal0 (Qmark_inactive); 310 xsignal0 (Qmark_inactive);
311 311
312 m = Fmarker_position (current_buffer->mark); 312 m = Fmarker_position (B_ (current_buffer, mark));
313 if (NILP (m)) 313 if (NILP (m))
314 error ("The mark is not set now, so there is no region"); 314 error ("The mark is not set now, so there is no region");
315 315
@@ -338,7 +338,7 @@ Watch out! Moving this marker changes the mark position.
338If you set the marker not to point anywhere, the buffer will have no mark. */) 338If you set the marker not to point anywhere, the buffer will have no mark. */)
339 (void) 339 (void)
340{ 340{
341 return current_buffer->mark; 341 return B_ (current_buffer, mark);
342} 342}
343 343
344 344
@@ -866,9 +866,9 @@ save_excursion_save (void)
866 == current_buffer); 866 == current_buffer);
867 867
868 return Fcons (Fpoint_marker (), 868 return Fcons (Fpoint_marker (),
869 Fcons (Fcopy_marker (current_buffer->mark, Qnil), 869 Fcons (Fcopy_marker (B_ (current_buffer, mark), Qnil),
870 Fcons (visible ? Qt : Qnil, 870 Fcons (visible ? Qt : Qnil,
871 Fcons (current_buffer->mark_active, 871 Fcons (B_ (current_buffer, mark_active),
872 selected_window)))); 872 selected_window))));
873} 873}
874 874
@@ -900,8 +900,8 @@ save_excursion_restore (Lisp_Object info)
900 /* Mark marker. */ 900 /* Mark marker. */
901 info = XCDR (info); 901 info = XCDR (info);
902 tem = XCAR (info); 902 tem = XCAR (info);
903 omark = Fmarker_position (current_buffer->mark); 903 omark = Fmarker_position (B_ (current_buffer, mark));
904 Fset_marker (current_buffer->mark, tem, Fcurrent_buffer ()); 904 Fset_marker (B_ (current_buffer, mark), tem, Fcurrent_buffer ());
905 nmark = Fmarker_position (tem); 905 nmark = Fmarker_position (tem);
906 unchain_marker (XMARKER (tem)); 906 unchain_marker (XMARKER (tem));
907 907
@@ -922,14 +922,14 @@ save_excursion_restore (Lisp_Object info)
922 /* Mark active */ 922 /* Mark active */
923 info = XCDR (info); 923 info = XCDR (info);
924 tem = XCAR (info); 924 tem = XCAR (info);
925 tem1 = current_buffer->mark_active; 925 tem1 = B_ (current_buffer, mark_active);
926 current_buffer->mark_active = tem; 926 B_ (current_buffer, mark_active) = tem;
927 927
928 if (!NILP (Vrun_hooks)) 928 if (!NILP (Vrun_hooks))
929 { 929 {
930 /* If mark is active now, and either was not active 930 /* If mark is active now, and either was not active
931 or was at a different place, run the activate hook. */ 931 or was at a different place, run the activate hook. */
932 if (! NILP (current_buffer->mark_active)) 932 if (! NILP (B_ (current_buffer, mark_active)))
933 { 933 {
934 if (! EQ (omark, nmark)) 934 if (! EQ (omark, nmark))
935 call1 (Vrun_hooks, intern ("activate-mark-hook")); 935 call1 (Vrun_hooks, intern ("activate-mark-hook"));
@@ -1114,7 +1114,7 @@ At the beginning of the buffer or accessible region, return 0. */)
1114 Lisp_Object temp; 1114 Lisp_Object temp;
1115 if (PT <= BEGV) 1115 if (PT <= BEGV)
1116 XSETFASTINT (temp, 0); 1116 XSETFASTINT (temp, 0);
1117 else if (!NILP (current_buffer->enable_multibyte_characters)) 1117 else if (!NILP (B_ (current_buffer, enable_multibyte_characters)))
1118 { 1118 {
1119 EMACS_INT pos = PT_BYTE; 1119 EMACS_INT pos = PT_BYTE;
1120 DEC_POS (pos); 1120 DEC_POS (pos);
@@ -1228,7 +1228,7 @@ If POS is out of range, the value is nil. */)
1228 pos_byte = CHAR_TO_BYTE (XINT (pos)); 1228 pos_byte = CHAR_TO_BYTE (XINT (pos));
1229 } 1229 }
1230 1230
1231 if (!NILP (current_buffer->enable_multibyte_characters)) 1231 if (!NILP (B_ (current_buffer, enable_multibyte_characters)))
1232 { 1232 {
1233 DEC_POS (pos_byte); 1233 DEC_POS (pos_byte);
1234 XSETFASTINT (val, FETCH_CHAR (pos_byte)); 1234 XSETFASTINT (val, FETCH_CHAR (pos_byte));
@@ -2135,7 +2135,7 @@ general_insert_function (void (*insert_func)
2135 unsigned char str[MAX_MULTIBYTE_LENGTH]; 2135 unsigned char str[MAX_MULTIBYTE_LENGTH];
2136 int len; 2136 int len;
2137 2137
2138 if (!NILP (current_buffer->enable_multibyte_characters)) 2138 if (!NILP (B_ (current_buffer, enable_multibyte_characters)))
2139 len = CHAR_STRING (XFASTINT (val), str); 2139 len = CHAR_STRING (XFASTINT (val), str);
2140 else 2140 else
2141 { 2141 {
@@ -2267,7 +2267,7 @@ from adjoining text, if those properties are sticky. */)
2267 CHECK_NUMBER (character); 2267 CHECK_NUMBER (character);
2268 CHECK_NUMBER (count); 2268 CHECK_NUMBER (count);
2269 2269
2270 if (!NILP (current_buffer->enable_multibyte_characters)) 2270 if (!NILP (B_ (current_buffer, enable_multibyte_characters)))
2271 len = CHAR_STRING (XFASTINT (character), str); 2271 len = CHAR_STRING (XFASTINT (character), str);
2272 else 2272 else
2273 str[0] = XFASTINT (character), len = 1; 2273 str[0] = XFASTINT (character), len = 1;
@@ -2316,7 +2316,7 @@ from adjoining text, if those properties are sticky. */)
2316 if (XINT (byte) < 0 || XINT (byte) > 255) 2316 if (XINT (byte) < 0 || XINT (byte) > 255)
2317 args_out_of_range_3 (byte, make_number (0), make_number (255)); 2317 args_out_of_range_3 (byte, make_number (0), make_number (255));
2318 if (XINT (byte) >= 128 2318 if (XINT (byte) >= 128
2319 && ! NILP (current_buffer->enable_multibyte_characters)) 2319 && ! NILP (B_ (current_buffer, enable_multibyte_characters)))
2320 XSETFASTINT (byte, BYTE8_TO_CHAR (XINT (byte))); 2320 XSETFASTINT (byte, BYTE8_TO_CHAR (XINT (byte)));
2321 return Finsert_char (byte, count, inherit); 2321 return Finsert_char (byte, count, inherit);
2322} 2322}
@@ -2370,7 +2370,7 @@ make_buffer_string_both (EMACS_INT start, EMACS_INT start_byte,
2370 if (start < GPT && GPT < end) 2370 if (start < GPT && GPT < end)
2371 move_gap (start); 2371 move_gap (start);
2372 2372
2373 if (! NILP (current_buffer->enable_multibyte_characters)) 2373 if (! NILP (B_ (current_buffer, enable_multibyte_characters)))
2374 result = make_uninit_multibyte_string (end - start, end_byte - start_byte); 2374 result = make_uninit_multibyte_string (end - start, end_byte - start_byte);
2375 else 2375 else
2376 result = make_uninit_string (end - start); 2376 result = make_uninit_string (end - start);
@@ -2485,7 +2485,7 @@ They default to the values of (point-min) and (point-max) in BUFFER. */)
2485 if (NILP (buf)) 2485 if (NILP (buf))
2486 nsberror (buffer); 2486 nsberror (buffer);
2487 bp = XBUFFER (buf); 2487 bp = XBUFFER (buf);
2488 if (NILP (bp->name)) 2488 if (NILP (B_ (bp, name)))
2489 error ("Selecting deleted buffer"); 2489 error ("Selecting deleted buffer");
2490 2490
2491 if (NILP (start)) 2491 if (NILP (start))
@@ -2533,8 +2533,8 @@ determines whether case is significant or ignored. */)
2533 register EMACS_INT begp1, endp1, begp2, endp2, temp; 2533 register EMACS_INT begp1, endp1, begp2, endp2, temp;
2534 register struct buffer *bp1, *bp2; 2534 register struct buffer *bp1, *bp2;
2535 register Lisp_Object trt 2535 register Lisp_Object trt
2536 = (!NILP (current_buffer->case_fold_search) 2536 = (!NILP (B_ (current_buffer, case_fold_search))
2537 ? current_buffer->case_canon_table : Qnil); 2537 ? B_ (current_buffer, case_canon_table) : Qnil);
2538 EMACS_INT chars = 0; 2538 EMACS_INT chars = 0;
2539 EMACS_INT i1, i2, i1_byte, i2_byte; 2539 EMACS_INT i1, i2, i1_byte, i2_byte;
2540 2540
@@ -2549,7 +2549,7 @@ determines whether case is significant or ignored. */)
2549 if (NILP (buf1)) 2549 if (NILP (buf1))
2550 nsberror (buffer1); 2550 nsberror (buffer1);
2551 bp1 = XBUFFER (buf1); 2551 bp1 = XBUFFER (buf1);
2552 if (NILP (bp1->name)) 2552 if (NILP (B_ (bp1, name)))
2553 error ("Selecting deleted buffer"); 2553 error ("Selecting deleted buffer");
2554 } 2554 }
2555 2555
@@ -2587,7 +2587,7 @@ determines whether case is significant or ignored. */)
2587 if (NILP (buf2)) 2587 if (NILP (buf2))
2588 nsberror (buffer2); 2588 nsberror (buffer2);
2589 bp2 = XBUFFER (buf2); 2589 bp2 = XBUFFER (buf2);
2590 if (NILP (bp2->name)) 2590 if (NILP (B_ (bp2, name)))
2591 error ("Selecting deleted buffer"); 2591 error ("Selecting deleted buffer");
2592 } 2592 }
2593 2593
@@ -2627,7 +2627,7 @@ determines whether case is significant or ignored. */)
2627 2627
2628 QUIT; 2628 QUIT;
2629 2629
2630 if (! NILP (bp1->enable_multibyte_characters)) 2630 if (! NILP (B_ (bp1, enable_multibyte_characters)))
2631 { 2631 {
2632 c1 = BUF_FETCH_MULTIBYTE_CHAR (bp1, i1_byte); 2632 c1 = BUF_FETCH_MULTIBYTE_CHAR (bp1, i1_byte);
2633 BUF_INC_POS (bp1, i1_byte); 2633 BUF_INC_POS (bp1, i1_byte);
@@ -2640,7 +2640,7 @@ determines whether case is significant or ignored. */)
2640 i1++; 2640 i1++;
2641 } 2641 }
2642 2642
2643 if (! NILP (bp2->enable_multibyte_characters)) 2643 if (! NILP (B_ (bp2, enable_multibyte_characters)))
2644 { 2644 {
2645 c2 = BUF_FETCH_MULTIBYTE_CHAR (bp2, i2_byte); 2645 c2 = BUF_FETCH_MULTIBYTE_CHAR (bp2, i2_byte);
2646 BUF_INC_POS (bp2, i2_byte); 2646 BUF_INC_POS (bp2, i2_byte);
@@ -2680,13 +2680,13 @@ determines whether case is significant or ignored. */)
2680static Lisp_Object 2680static Lisp_Object
2681subst_char_in_region_unwind (Lisp_Object arg) 2681subst_char_in_region_unwind (Lisp_Object arg)
2682{ 2682{
2683 return current_buffer->undo_list = arg; 2683 return B_ (current_buffer, undo_list) = arg;
2684} 2684}
2685 2685
2686static Lisp_Object 2686static Lisp_Object
2687subst_char_in_region_unwind_1 (Lisp_Object arg) 2687subst_char_in_region_unwind_1 (Lisp_Object arg)
2688{ 2688{
2689 return current_buffer->filename = arg; 2689 return B_ (current_buffer, filename) = arg;
2690} 2690}
2691 2691
2692DEFUN ("subst-char-in-region", Fsubst_char_in_region, 2692DEFUN ("subst-char-in-region", Fsubst_char_in_region,
@@ -2712,7 +2712,7 @@ Both characters must have the same length of multi-byte form. */)
2712#define COMBINING_BOTH (COMBINING_BEFORE | COMBINING_AFTER) 2712#define COMBINING_BOTH (COMBINING_BEFORE | COMBINING_AFTER)
2713 int maybe_byte_combining = COMBINING_NO; 2713 int maybe_byte_combining = COMBINING_NO;
2714 EMACS_INT last_changed = 0; 2714 EMACS_INT last_changed = 0;
2715 int multibyte_p = !NILP (current_buffer->enable_multibyte_characters); 2715 int multibyte_p = !NILP (B_ (current_buffer, enable_multibyte_characters));
2716 2716
2717 restart: 2717 restart:
2718 2718
@@ -2756,12 +2756,12 @@ Both characters must have the same length of multi-byte form. */)
2756 if (!changed && !NILP (noundo)) 2756 if (!changed && !NILP (noundo))
2757 { 2757 {
2758 record_unwind_protect (subst_char_in_region_unwind, 2758 record_unwind_protect (subst_char_in_region_unwind,
2759 current_buffer->undo_list); 2759 B_ (current_buffer, undo_list));
2760 current_buffer->undo_list = Qt; 2760 B_ (current_buffer, undo_list) = Qt;
2761 /* Don't do file-locking. */ 2761 /* Don't do file-locking. */
2762 record_unwind_protect (subst_char_in_region_unwind_1, 2762 record_unwind_protect (subst_char_in_region_unwind_1,
2763 current_buffer->filename); 2763 B_ (current_buffer, filename));
2764 current_buffer->filename = Qnil; 2764 B_ (current_buffer, filename) = Qnil;
2765 } 2765 }
2766 2766
2767 if (pos_byte < GPT_BYTE) 2767 if (pos_byte < GPT_BYTE)
@@ -2824,7 +2824,7 @@ Both characters must have the same length of multi-byte form. */)
2824 2824
2825 struct gcpro gcpro1; 2825 struct gcpro gcpro1;
2826 2826
2827 tem = current_buffer->undo_list; 2827 tem = B_ (current_buffer, undo_list);
2828 GCPRO1 (tem); 2828 GCPRO1 (tem);
2829 2829
2830 /* Make a multibyte string containing this single character. */ 2830 /* Make a multibyte string containing this single character. */
@@ -2843,7 +2843,7 @@ Both characters must have the same length of multi-byte form. */)
2843 INC_POS (pos_byte_next); 2843 INC_POS (pos_byte_next);
2844 2844
2845 if (! NILP (noundo)) 2845 if (! NILP (noundo))
2846 current_buffer->undo_list = tem; 2846 B_ (current_buffer, undo_list) = tem;
2847 2847
2848 UNGCPRO; 2848 UNGCPRO;
2849 } 2849 }
@@ -2945,7 +2945,7 @@ It returns the number of characters changed. */)
2945 int cnt; /* Number of changes made. */ 2945 int cnt; /* Number of changes made. */
2946 EMACS_INT size; /* Size of translate table. */ 2946 EMACS_INT size; /* Size of translate table. */
2947 EMACS_INT pos, pos_byte, end_pos; 2947 EMACS_INT pos, pos_byte, end_pos;
2948 int multibyte = !NILP (current_buffer->enable_multibyte_characters); 2948 int multibyte = !NILP (B_ (current_buffer, enable_multibyte_characters));
2949 int string_multibyte; 2949 int string_multibyte;
2950 Lisp_Object val; 2950 Lisp_Object val;
2951 2951
@@ -3206,7 +3206,7 @@ save_restriction_restore (Lisp_Object data)
3206 ? XMARKER (XCAR (data))->buffer 3206 ? XMARKER (XCAR (data))->buffer
3207 : XBUFFER (data)); 3207 : XBUFFER (data));
3208 3208
3209 if (buf && buf != current_buffer && !NILP (buf->pt_marker)) 3209 if (buf && buf != current_buffer && !NILP (B_ (buf, pt_marker)))
3210 { /* If `buf' uses markers to keep track of PT, BEGV, and ZV (as 3210 { /* If `buf' uses markers to keep track of PT, BEGV, and ZV (as
3211 is the case if it is or has an indirect buffer), then make 3211 is the case if it is or has an indirect buffer), then make
3212 sure it is current before we update BEGV, so 3212 sure it is current before we update BEGV, so
@@ -4136,20 +4136,20 @@ Case is ignored if `case-fold-search' is non-nil in the current buffer. */)
4136 4136
4137 if (XINT (c1) == XINT (c2)) 4137 if (XINT (c1) == XINT (c2))
4138 return Qt; 4138 return Qt;
4139 if (NILP (current_buffer->case_fold_search)) 4139 if (NILP (B_ (current_buffer, case_fold_search)))
4140 return Qnil; 4140 return Qnil;
4141 4141
4142 /* Do these in separate statements, 4142 /* Do these in separate statements,
4143 then compare the variables. 4143 then compare the variables.
4144 because of the way DOWNCASE uses temp variables. */ 4144 because of the way DOWNCASE uses temp variables. */
4145 i1 = XFASTINT (c1); 4145 i1 = XFASTINT (c1);
4146 if (NILP (current_buffer->enable_multibyte_characters) 4146 if (NILP (B_ (current_buffer, enable_multibyte_characters))
4147 && ! ASCII_CHAR_P (i1)) 4147 && ! ASCII_CHAR_P (i1))
4148 { 4148 {
4149 MAKE_CHAR_MULTIBYTE (i1); 4149 MAKE_CHAR_MULTIBYTE (i1);
4150 } 4150 }
4151 i2 = XFASTINT (c2); 4151 i2 = XFASTINT (c2);
4152 if (NILP (current_buffer->enable_multibyte_characters) 4152 if (NILP (B_ (current_buffer, enable_multibyte_characters))
4153 && ! ASCII_CHAR_P (i2)) 4153 && ! ASCII_CHAR_P (i2))
4154 { 4154 {
4155 MAKE_CHAR_MULTIBYTE (i2); 4155 MAKE_CHAR_MULTIBYTE (i2);