diff options
| author | Stefan Monnier | 2008-11-21 05:33:29 +0000 |
|---|---|---|
| committer | Stefan Monnier | 2008-11-21 05:33:29 +0000 |
| commit | b8ff72fad8be3820e084c6db9280649c9534813f (patch) | |
| tree | e881f0d4820436262260588c192c8777a669f346 /src | |
| parent | 3be5da9e6f1fc2be8f5834baaeca17095a265aae (diff) | |
| download | emacs-b8ff72fad8be3820e084c6db9280649c9534813f.tar.gz emacs-b8ff72fad8be3820e084c6db9280649c9534813f.zip | |
(Fbuffer_swap_text): Remove redundant marker manipulation.
Fix copy/paste typo. Add checks.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 138 | ||||
| -rw-r--r-- | src/buffer.c | 16 |
2 files changed, 72 insertions, 82 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index ee88976b9f5..cb1e910f0cd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation. | ||
| 4 | Fix copy/paste typo. Add checks. | ||
| 5 | |||
| 1 | 2008-11-21 Kenichi Handa <handa@m17n.org> | 6 | 2008-11-21 Kenichi Handa <handa@m17n.org> |
| 2 | 7 | ||
| 3 | * coding.c (detect_coding_iso_2022): Reject invalid composition | 8 | * coding.c (detect_coding_iso_2022): Reject invalid composition |
| @@ -572,8 +577,7 @@ | |||
| 572 | (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel): | 577 | (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel): |
| 573 | Use core Emacs cursor types. | 578 | Use core Emacs cursor types. |
| 574 | 579 | ||
| 575 | * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor() under | 580 | * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS. |
| 576 | NS. | ||
| 577 | 581 | ||
| 578 | 2008-10-02 Martin Rudalics <rudalics@gmx.at> | 582 | 2008-10-02 Martin Rudalics <rudalics@gmx.at> |
| 579 | 583 | ||
| @@ -743,34 +747,29 @@ | |||
| 743 | * w32term.h (w32_display_info): Remove `height', `width', | 747 | * w32term.h (w32_display_info): Remove `height', `width', |
| 744 | `height_in', and `width_in' members. | 748 | `height_in', and `width_in' members. |
| 745 | 749 | ||
| 746 | * xterm.c (x_display_pixel_height, x_display_pixel_width): New | 750 | * xterm.c (x_display_pixel_height, x_display_pixel_width): |
| 747 | functions. | 751 | New functions. |
| 748 | (x_calc_absolute_position): Use them. | 752 | (x_calc_absolute_position): Use them. |
| 749 | (x_term_init): Omit removed `height' and `width' members. | 753 | (x_term_init): Omit removed `height' and `width' members. |
| 750 | 754 | ||
| 751 | * w32term.c (x_display_pixel_height, x_display_pixel_width): New | 755 | * w32term.c (x_display_pixel_height, x_display_pixel_width): |
| 752 | functions. | 756 | New functions. |
| 753 | (w32_read_socket, x_calc_absolute_position): Use them. | 757 | (w32_read_socket, x_calc_absolute_position): Use them. |
| 754 | (w32_initialize_display_info, w32_term_init): Omit removed members | 758 | (w32_initialize_display_info, w32_term_init): Omit removed members |
| 755 | of w32_display_info. | 759 | of w32_display_info. |
| 756 | 760 | ||
| 757 | * nsterm.m (x_display_pixel_height, x_display_pixel_width): New | 761 | * nsterm.m (x_display_pixel_height, x_display_pixel_width): |
| 758 | functions. | 762 | New functions. |
| 759 | (ns_initialize_display_info): Omit removed members of | 763 | (ns_initialize_display_info): Omit removed members of ns_display_info. |
| 760 | ns_display_info. | ||
| 761 | 764 | ||
| 762 | * xterm.c (x_display_pixel_height, x_display_pixel_width): New | 765 | * xterm.c (x_display_pixel_height, x_display_pixel_width): |
| 763 | functions. | 766 | New functions. |
| 764 | (x_calc_absolute_position): Use them. | 767 | (x_calc_absolute_position): Use them. |
| 765 | (x_term_init): Omit removed `height' and `width' members. | 768 | (x_term_init): Omit removed `height' and `width' members. |
| 766 | 769 | ||
| 767 | * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height) | 770 | * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height) |
| 768 | (compute_tip_xy): Use x_display_pixel_height and | 771 | (compute_tip_xy): |
| 769 | x_display_pixel_width. | 772 | * frame.c (x_fullscreen_adjust): |
| 770 | |||
| 771 | * frame.c (x_fullscreen_adjust): Use x_display_pixel_height and | ||
| 772 | x_display_pixel_width. | ||
| 773 | |||
| 774 | * xmenu.c (menu_position_func): Use x_display_pixel_height and | 773 | * xmenu.c (menu_position_func): Use x_display_pixel_height and |
| 775 | x_display_pixel_width. | 774 | x_display_pixel_width. |
| 776 | 775 | ||
| @@ -965,8 +964,8 @@ | |||
| 965 | 964 | ||
| 966 | 2008-09-02 Jason Rumney <jasonr@gnu.org> | 965 | 2008-09-02 Jason Rumney <jasonr@gnu.org> |
| 967 | 966 | ||
| 968 | * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show): Ensure | 967 | * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show): |
| 969 | mouse is not grabbed after menu is finished. | 968 | Ensure mouse is not grabbed after menu is finished. |
| 970 | 969 | ||
| 971 | 2008-09-01 Chong Yidong <cyd@stupidchicken.com> | 970 | 2008-09-01 Chong Yidong <cyd@stupidchicken.com> |
| 972 | 971 | ||
| @@ -1026,8 +1025,7 @@ | |||
| 1026 | passing random values to xfree. | 1025 | passing random values to xfree. |
| 1027 | 1026 | ||
| 1028 | * dispnew.c (init_display): Set `tty's association in frame's | 1027 | * dispnew.c (init_display): Set `tty's association in frame's |
| 1029 | parameters alist to the name of the terminal device, if that is | 1028 | parameters alist to the name of the terminal device, if that is known. |
| 1030 | known. | ||
| 1031 | 1029 | ||
| 1032 | 2008-08-29 Jason Rumney <jasonr@gnu.org> | 1030 | 2008-08-29 Jason Rumney <jasonr@gnu.org> |
| 1033 | 1031 | ||
| @@ -1068,8 +1066,8 @@ | |||
| 1068 | * chartab.c (optimize_sub_char_table): Perform more greedy | 1066 | * chartab.c (optimize_sub_char_table): Perform more greedy |
| 1069 | optimization. | 1067 | optimization. |
| 1070 | 1068 | ||
| 1071 | * composite.h (enum composition_method): Delete | 1069 | * composite.h (enum composition_method): |
| 1072 | COMPOSITION_WITH_GLYPH_STRING. | 1070 | Delete COMPOSITION_WITH_GLYPH_STRING. |
| 1073 | (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING. | 1071 | (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING. |
| 1074 | (Vcomposition_function_table): Extern it. | 1072 | (Vcomposition_function_table): Extern it. |
| 1075 | (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h. | 1073 | (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h. |
| @@ -1082,15 +1080,14 @@ | |||
| 1082 | * composite.c: Include window.h, frame.h, dispextern.h font.h. | 1080 | * composite.c: Include window.h, frame.h, dispextern.h font.h. |
| 1083 | (Vcomposition_function_table) | 1081 | (Vcomposition_function_table) |
| 1084 | (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING. | 1082 | (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING. |
| 1085 | (gstring_hash_table, gstring_work, gstring_work_headers): New | 1083 | (gstring_hash_table, gstring_work, gstring_work_headers): |
| 1086 | variables. | 1084 | New variables. |
| 1087 | (gstring_lookup_cache, composition_gstring_put_cache) | 1085 | (gstring_lookup_cache, composition_gstring_put_cache) |
| 1088 | (composition_gstring_from_id, composition_gstring_p) | 1086 | (composition_gstring_from_id, composition_gstring_p) |
| 1089 | (composition_gstring_width, fill_gstring_header) | 1087 | (composition_gstring_width, fill_gstring_header) |
| 1090 | (fill_gstring_body, autocmp_chars, composition_compute_stop_pos) | 1088 | (fill_gstring_body, autocmp_chars, composition_compute_stop_pos) |
| 1091 | (composition_reseat_it, composition_update_it) | 1089 | (composition_reseat_it, composition_update_it) |
| 1092 | (composition_adjust_point, Fcomposition_get_gstring): New | 1090 | (composition_adjust_point, Fcomposition_get_gstring): New functions. |
| 1093 | functions. | ||
| 1094 | (syms_of_composite): Initialize gstring_hash_table, gstrint_work, | 1091 | (syms_of_composite): Initialize gstring_hash_table, gstrint_work, |
| 1095 | and gstring_work_headers. DEFVAR_LISP composition-function-table. | 1092 | and gstring_work_headers. DEFVAR_LISP composition-function-table. |
| 1096 | Defsubr compostion_get_gstring. | 1093 | Defsubr compostion_get_gstring. |
| @@ -1105,9 +1102,9 @@ | |||
| 1105 | Delete c, len, cmp_id, cmp_len in u.comp. | 1102 | Delete c, len, cmp_id, cmp_len in u.comp. |
| 1106 | 1103 | ||
| 1107 | * font.h (enum lgstring_indices): Delete it. | 1104 | * font.h (enum lgstring_indices): Delete it. |
| 1108 | (LGSTRING_XXX, LGLYPH_XXX): These macros moved to composite.h. | 1105 | (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h. |
| 1109 | (enum lglyph_indices): Likewise. | 1106 | (enum lglyph_indices): Likewise. |
| 1110 | (font_range): Extern adjusted. | 1107 | (font_range): Adjust extern. |
| 1111 | (font_fill_lglyph_metrics): Extern it. | 1108 | (font_fill_lglyph_metrics): Extern it. |
| 1112 | 1109 | ||
| 1113 | * font.c (QCf): New variable. | 1110 | * font.c (QCf): New variable. |
| @@ -1116,11 +1113,10 @@ | |||
| 1116 | (font_range): Type and arguments changed. | 1113 | (font_range): Type and arguments changed. |
| 1117 | (Ffont_make_gstring, Ffont_fill_gstring): Delete them. | 1114 | (Ffont_make_gstring, Ffont_fill_gstring): Delete them. |
| 1118 | (font_fill_lglyph_metrics): New function. | 1115 | (font_fill_lglyph_metrics): New function. |
| 1119 | (Ffont_shape_text): Renamed to Ffont_shape_gstring and arguments | 1116 | (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments. |
| 1120 | changed. | ||
| 1121 | (syms_of_font): DEFSYM QCf. Delete defsubr for | 1117 | (syms_of_font): DEFSYM QCf. Delete defsubr for |
| 1122 | Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text. Defsubr | 1118 | Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text. |
| 1123 | Sfont_shape_gstring. | 1119 | Defsubr Sfont_shape_gstring. |
| 1124 | 1120 | ||
| 1125 | * fontset.h (font_for_char): Extern it. | 1121 | * fontset.h (font_for_char): Extern it. |
| 1126 | 1122 | ||
| @@ -1128,8 +1124,7 @@ | |||
| 1128 | 1124 | ||
| 1129 | * ftfont.c: Include composite.h. | 1125 | * ftfont.c: Include composite.h. |
| 1130 | (ftfont_resolve_generic_family): Add langset "en" to pattern. | 1126 | (ftfont_resolve_generic_family): Add langset "en" to pattern. |
| 1131 | (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not | 1127 | (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH. |
| 1132 | LGSTRING_LENGTH. | ||
| 1133 | 1128 | ||
| 1134 | * indent.c: Include composite.h and dispextern.h. | 1129 | * indent.c: Include composite.h and dispextern.h. |
| 1135 | (check_composition): Delete this function. | 1130 | (check_composition): Delete this function. |
| @@ -1142,17 +1137,16 @@ | |||
| 1142 | * keyboard.c (adjust_point_for_property): Check composition by | 1137 | * keyboard.c (adjust_point_for_property): Check composition by |
| 1143 | composition_adjust_point. | 1138 | composition_adjust_point. |
| 1144 | 1139 | ||
| 1145 | * nsterm.m (ns_draw_glyph_string): Adjusted for the change of | 1140 | * nsterm.m (ns_draw_glyph_string): Adjust for the change of |
| 1146 | struct glyph_string. | 1141 | struct glyph_string. |
| 1147 | 1142 | ||
| 1148 | * term.c (encode_terminal_code): Adjusted for the change of struct | 1143 | * term.c (encode_terminal_code): Adjust for the change of struct glyph. |
| 1149 | glyph. | 1144 | (append_composite_glyph): Adjust for the change of struct it and |
| 1150 | (append_composite_glyph): Adjusted for the change of struct it and | ||
| 1151 | struct glyph. | 1145 | struct glyph. |
| 1152 | (produce_composite_glyph): Likewise. | 1146 | (produce_composite_glyph): Likewise. |
| 1153 | 1147 | ||
| 1154 | * w32term.c (x_draw_composite_glyph_string_foreground): Adjusted | 1148 | * w32term.c (x_draw_composite_glyph_string_foreground): |
| 1155 | for the change of struct glyph_string. | 1149 | Adjust for the change of struct glyph_string. |
| 1156 | (x_draw_glyph_string): Likewise. | 1150 | (x_draw_glyph_string): Likewise. |
| 1157 | 1151 | ||
| 1158 | * w32uniscribe.c (struct uniscribe_font_info): Include composite.h. | 1152 | * w32uniscribe.c (struct uniscribe_font_info): Include composite.h. |
| @@ -1162,41 +1156,38 @@ | |||
| 1162 | (it_props): Delete the entry for Qauto_composed. | 1156 | (it_props): Delete the entry for Qauto_composed. |
| 1163 | (init_iterator): Initialize it->cmp_it.id to -1. | 1157 | (init_iterator): Initialize it->cmp_it.id to -1. |
| 1164 | (compute_stop_pos): Call composition_compute_stop_pos. | 1158 | (compute_stop_pos): Call composition_compute_stop_pos. |
| 1165 | (face_before_or_after_it_pos): Adjusted for the change of struct | 1159 | (face_before_or_after_it_pos): Adjust for the change of struct it. |
| 1166 | it. | ||
| 1167 | (handle_auto_composed_prop): Delete it. | 1160 | (handle_auto_composed_prop): Delete it. |
| 1168 | (handle_composition_prop): Handle only static composition. | 1161 | (handle_composition_prop): Handle only static composition. |
| 1169 | (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION | 1162 | (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION |
| 1170 | from xassert. Initialize it->cmp_it.stop_pos. | 1163 | from xassert. Initialize it->cmp_it.stop_pos. |
| 1171 | (push_it): Adjusted for the change of struct it. | 1164 | (push_it): Adjust for the change of struct it. |
| 1172 | (pop_it): Likewise. | 1165 | (pop_it): Likewise. |
| 1173 | (get_next_element): Delete next_element_from_composition. | 1166 | (get_next_element): Delete next_element_from_composition. |
| 1174 | (CHAR_COMPOSED_P): New macro. | 1167 | (CHAR_COMPOSED_P): New macro. |
| 1175 | (get_next_display_element): For automatic composition, get a face | 1168 | (get_next_display_element): For automatic composition, get a face |
| 1176 | from the font in the glyph-string. | 1169 | from the font in the glyph-string. |
| 1177 | (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING, | 1170 | (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING, |
| 1178 | check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION | 1171 | check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case. |
| 1179 | case. | ||
| 1180 | (next_element_from_string): Check if the character at the current | 1172 | (next_element_from_string): Check if the character at the current |
| 1181 | position is composed by CHAR_COMPOSED_P. | 1173 | position is composed by CHAR_COMPOSED_P. |
| 1182 | (next_element_from_buffer): Likewise. | 1174 | (next_element_from_buffer): Likewise. |
| 1183 | (next_element_from_composition): Adjusted for the change of struct | 1175 | (next_element_from_composition): Adjust for the change of struct |
| 1184 | it. Update it->cmp_it. | 1176 | it. Update it->cmp_it. |
| 1185 | (dump_glyph): Adjusted for the change of struct glyph. | 1177 | (dump_glyph): Adjust for the change of struct glyph. |
| 1186 | (fill_composite_glyph_string): Adjusted for the change of struct | 1178 | (fill_composite_glyph_string): Adjust for the change of struct |
| 1187 | it and struct glyph. Don't handle automatic composition here. | 1179 | it and struct glyph. Don't handle automatic composition here. |
| 1188 | (fill_gstring_glyph_string): New function. | 1180 | (fill_gstring_glyph_string): New function. |
| 1189 | (x_get_glyph_overhangs): Handle automatic composition. | 1181 | (x_get_glyph_overhangs): Handle automatic composition. |
| 1190 | (BUILD_COMPOSITE_GLYPH_STRING): Adjusted for the change of struct | 1182 | (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph. |
| 1191 | glyph. | ||
| 1192 | (BUILD_GSTRING_GLYPH_STRING): New macro. | 1183 | (BUILD_GSTRING_GLYPH_STRING): New macro. |
| 1193 | (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for | 1184 | (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for |
| 1194 | automatic composition. | 1185 | automatic composition. |
| 1195 | (append_composite_glyph): Adjusted for the change of struct it and | 1186 | (append_composite_glyph): Adjust for the change of struct it and |
| 1196 | struct glyph. | 1187 | struct glyph. |
| 1197 | (x_produce_glyphs): Adjusted for the change of struct it. | 1188 | (x_produce_glyphs): Adjust for the change of struct it. |
| 1198 | 1189 | ||
| 1199 | * xterm.c (x_draw_composite_glyph_string_foreground): Adjusted for | 1190 | * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for |
| 1200 | the change of struct glyph_string. | 1191 | the change of struct glyph_string. |
| 1201 | (x_draw_glyph_string): Likewise. | 1192 | (x_draw_glyph_string): Likewise. |
| 1202 | 1193 | ||
| @@ -1252,8 +1243,7 @@ | |||
| 1252 | 1243 | ||
| 1253 | 2008-08-27 Kenichi Handa <handa@m17n.org> | 1244 | 2008-08-27 Kenichi Handa <handa@m17n.org> |
| 1254 | 1245 | ||
| 1255 | * fileio.c (report_file_error): Fix handling of multibyte error | 1246 | * fileio.c (report_file_error): Fix handling of multibyte error string. |
| 1256 | string. | ||
| 1257 | 1247 | ||
| 1258 | 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de> | 1248 | 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de> |
| 1259 | 1249 | ||
| @@ -1282,8 +1272,7 @@ | |||
| 1282 | 2008-08-26 Chong Yidong <cyd@stupidchicken.com> | 1272 | 2008-08-26 Chong Yidong <cyd@stupidchicken.com> |
| 1283 | 1273 | ||
| 1284 | * indent.c (Fvertical_motion): If moving forward starting from a | 1274 | * indent.c (Fvertical_motion): If moving forward starting from a |
| 1285 | multi-line string, move the iterator to the last line of that | 1275 | multi-line string, move the iterator to the last line of that string. |
| 1286 | string. | ||
| 1287 | 1276 | ||
| 1288 | 2008-08-25 Eli Zaretskii <eliz@gnu.org> | 1277 | 2008-08-25 Eli Zaretskii <eliz@gnu.org> |
| 1289 | 1278 | ||
| @@ -1318,8 +1307,8 @@ | |||
| 1318 | * dispnew.c (init_display): Remove MS-DOS specific conditions for | 1307 | * dispnew.c (init_display): Remove MS-DOS specific conditions for |
| 1319 | calling tty-set-up-initial-frame-faces. | 1308 | calling tty-set-up-initial-frame-faces. |
| 1320 | 1309 | ||
| 1321 | * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show): Allow | 1310 | * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show): |
| 1322 | MSDOS frames along with X frames. | 1311 | Allow MSDOS frames along with X frames. |
| 1323 | 1312 | ||
| 1324 | * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in | 1313 | * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in |
| 1325 | addition to output_termcap. | 1314 | addition to output_termcap. |
| @@ -1334,12 +1323,11 @@ | |||
| 1334 | (syms_of_process): Intern and staticpro it. | 1323 | (syms_of_process): Intern and staticpro it. |
| 1335 | 1324 | ||
| 1336 | * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data): | 1325 | * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data): |
| 1337 | Adjust for changes in encoding/decoding routines. Use | 1326 | Adjust for changes in encoding/decoding routines. |
| 1338 | encode_coding_object and decode_coding_object instead of | 1327 | Use encode_coding_object and decode_coding_object instead of |
| 1339 | encode_coding and decode_coding. | 1328 | encode_coding and decode_coding. |
| 1340 | 1329 | ||
| 1341 | * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as | 1330 | * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument. |
| 1342 | argument. | ||
| 1343 | 1331 | ||
| 1344 | * dosfns.c: Include frame.h before termhooks.h. | 1332 | * dosfns.c: Include frame.h before termhooks.h. |
| 1345 | (dos_cleanup): Use CURTTY ()->termscript instead of a global | 1333 | (dos_cleanup): Use CURTTY ()->termscript instead of a global |
| @@ -1372,8 +1360,8 @@ | |||
| 1372 | Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system. | 1360 | Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system. |
| 1373 | Announce date and time of session start, if termscript is open. | 1361 | Announce date and time of session start, if termscript is open. |
| 1374 | Don't zero out the_only_display_info (it is done in | 1362 | Don't zero out the_only_display_info (it is done in |
| 1375 | term.c:init_tty). Open termscript only of not already open. Log | 1363 | term.c:init_tty). Open termscript only of not already open. |
| 1376 | "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse | 1364 | Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse |
| 1377 | here instead of dos_ttraw. Don't initialize display if this is an | 1365 | here instead of dos_ttraw. Don't initialize display if this is an |
| 1378 | initial tty. Don't set FRAME_FONT. | 1366 | initial tty. Don't set FRAME_FONT. |
| 1379 | (Vwindow_system_version): Bump to 23. | 1367 | (Vwindow_system_version): Bump to 23. |
| @@ -1392,8 +1380,7 @@ | |||
| 1392 | (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs) | 1380 | (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs) |
| 1393 | (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes) | 1381 | (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes) |
| 1394 | (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin): | 1382 | (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin): |
| 1395 | Accept additional argument: a pointer to a frame. All callers | 1383 | Accept additional argument: a pointer to a frame. Update all callers. |
| 1396 | changed. | ||
| 1397 | (request_sigio, unrequest_sigio): Don't define, now defined on | 1384 | (request_sigio, unrequest_sigio): Don't define, now defined on |
| 1398 | sysdep.c. | 1385 | sysdep.c. |
| 1399 | (IT_write_glyphs): Rewrite to use encode_terminal_code. | 1386 | (IT_write_glyphs): Rewrite to use encode_terminal_code. |
| @@ -1406,13 +1393,12 @@ | |||
| 1406 | dimensions. Call init_baud_rate to set bad_rate. | 1393 | dimensions. Call init_baud_rate to set bad_rate. |
| 1407 | (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body. | 1394 | (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body. |
| 1408 | (Fsuspend_tty) [MSDOS]: Don't close input and output. | 1395 | (Fsuspend_tty) [MSDOS]: Don't close input and output. |
| 1409 | (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use | 1396 | (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout. |
| 1410 | stdin/stdout. | ||
| 1411 | (get_tty_terminal, get_named_tty, Ftty_type) | 1397 | (get_tty_terminal, get_named_tty, Ftty_type) |
| 1412 | (Fcontrolling_tty_p): Handle output_msdos_raw in addition to | 1398 | (Fcontrolling_tty_p): Handle output_msdos_raw in addition to |
| 1413 | output_termcap. | 1399 | output_termcap. |
| 1414 | (Fresume_tty, Fsuspend_tty, init_tty, delete_tty): Call | 1400 | (Fresume_tty, Fsuspend_tty, init_tty, delete_tty): |
| 1415 | add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor | 1401 | Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor |
| 1416 | only when subprocesses are supported | 1402 | only when subprocesses are supported |
| 1417 | 1403 | ||
| 1418 | * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of | 1404 | * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of |
| @@ -1424,10 +1410,10 @@ | |||
| 1424 | x_output. | 1410 | x_output. |
| 1425 | (FRAME_FONT): Use output_data.tty. | 1411 | (FRAME_FONT): Use output_data.tty. |
| 1426 | (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define. | 1412 | (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define. |
| 1427 | (struct x_display_info): Renamed from display_info. All users in | 1413 | (struct x_display_info): Rename from display_info. Update all users in |
| 1428 | msdos.c changed. | 1414 | msdos.c. |
| 1429 | (struct x_output): Remove background_pixel and foreground_pixel. | 1415 | (struct x_output): Remove background_pixel and foreground_pixel. |
| 1430 | (the_only_display_info): Renamed from the_only_x_display. | 1416 | (the_only_display_info): Rename from the_only_x_display. |
| 1431 | (dos_ttraw): Update prototype. | 1417 | (dos_ttraw): Update prototype. |
| 1432 | 1418 | ||
| 1433 | * Makefile.in (MSDOS_OBJ): Add xmenu.o. | 1419 | * Makefile.in (MSDOS_OBJ): Add xmenu.o. |
diff --git a/src/buffer.c b/src/buffer.c index b9c4c853546..4e87498ea51 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -2234,10 +2234,6 @@ DEFUN ("buffer-swap-text", Fbuffer_swap_text, Sbuffer_swap_text, | |||
| 2234 | swapfield (overlay_center, EMACS_INT); | 2234 | swapfield (overlay_center, EMACS_INT); |
| 2235 | swapfield (undo_list, Lisp_Object); | 2235 | swapfield (undo_list, Lisp_Object); |
| 2236 | swapfield (mark, Lisp_Object); | 2236 | swapfield (mark, Lisp_Object); |
| 2237 | if (MARKERP (current_buffer->mark) && XMARKER (current_buffer->mark)->buffer) | ||
| 2238 | XMARKER (current_buffer->mark)->buffer = current_buffer; | ||
| 2239 | if (MARKERP (other_buffer->mark) && XMARKER (other_buffer->mark)->buffer) | ||
| 2240 | XMARKER (other_buffer->mark)->buffer = other_buffer; | ||
| 2241 | swapfield (enable_multibyte_characters, Lisp_Object); | 2237 | swapfield (enable_multibyte_characters, Lisp_Object); |
| 2242 | /* FIXME: Not sure what we should do with these *_marker fields. | 2238 | /* FIXME: Not sure what we should do with these *_marker fields. |
| 2243 | Hopefully they're just nil anyway. */ | 2239 | Hopefully they're just nil anyway. */ |
| @@ -2252,16 +2248,24 @@ DEFUN ("buffer-swap-text", Fbuffer_swap_text, Sbuffer_swap_text, | |||
| 2252 | current_buffer->text->overlay_modiff++; other_buffer->text->overlay_modiff++; | 2248 | current_buffer->text->overlay_modiff++; other_buffer->text->overlay_modiff++; |
| 2253 | current_buffer->text->beg_unchanged = current_buffer->text->gpt; | 2249 | current_buffer->text->beg_unchanged = current_buffer->text->gpt; |
| 2254 | current_buffer->text->end_unchanged = current_buffer->text->gpt; | 2250 | current_buffer->text->end_unchanged = current_buffer->text->gpt; |
| 2255 | other_buffer->text->beg_unchanged = current_buffer->text->gpt; | 2251 | other_buffer->text->beg_unchanged = other_buffer->text->gpt; |
| 2256 | other_buffer->text->end_unchanged = current_buffer->text->gpt; | 2252 | other_buffer->text->end_unchanged = other_buffer->text->gpt; |
| 2257 | { | 2253 | { |
| 2258 | struct Lisp_Marker *m; | 2254 | struct Lisp_Marker *m; |
| 2259 | for (m = BUF_MARKERS (current_buffer); m; m = m->next) | 2255 | for (m = BUF_MARKERS (current_buffer); m; m = m->next) |
| 2260 | if (m->buffer == other_buffer) | 2256 | if (m->buffer == other_buffer) |
| 2261 | m->buffer = current_buffer; | 2257 | m->buffer = current_buffer; |
| 2258 | else | ||
| 2259 | /* Since there's no indirect buffer in sight, markers on | ||
| 2260 | BUF_MARKERS(buf) should either be for `buf' or dead. */ | ||
| 2261 | eassert (!m->buffer); | ||
| 2262 | for (m = BUF_MARKERS (other_buffer); m; m = m->next) | 2262 | for (m = BUF_MARKERS (other_buffer); m; m = m->next) |
| 2263 | if (m->buffer == current_buffer) | 2263 | if (m->buffer == current_buffer) |
| 2264 | m->buffer = other_buffer; | 2264 | m->buffer = other_buffer; |
| 2265 | else | ||
| 2266 | /* Since there's no indirect buffer in sight, markers on | ||
| 2267 | BUF_MARKERS(buf) should either be for `buf' or dead. */ | ||
| 2268 | eassert (!m->buffer); | ||
| 2265 | } | 2269 | } |
| 2266 | { /* Some of the C code expects that w->buffer == w->pointm->buffer. | 2270 | { /* Some of the C code expects that w->buffer == w->pointm->buffer. |
| 2267 | So since we just swapped the markers between the two buffers, we need | 2271 | So since we just swapped the markers between the two buffers, we need |