comparison src/gutter.c @ 771:943eaba38521

[xemacs-hg @ 2002-03-13 08:51:24 by ben] The big ben-mule-21-5 check-in! Various files were added and deleted. See CHANGES-ben-mule. There are still some test suite failures. No crashes, though. Many of the failures have to do with problems in the test suite itself rather than in the actual code. I'll be addressing these in the next day or so -- none of the test suite failures are at all critical. Meanwhile I'll be trying to address the biggest issues -- i.e. build or run failures, which will almost certainly happen on various platforms. All comments should be sent to ben@xemacs.org -- use a Cc: if necessary when sending to mailing lists. There will be pre- and post- tags, something like pre-ben-mule-21-5-merge-in, and post-ben-mule-21-5-merge-in.
author ben
date Wed, 13 Mar 2002 08:54:06 +0000
parents fdefd0186b75
children e38acbeb1cae
comparison
equal deleted inserted replaced
770:336a418893b5 771:943eaba38521
347 NILP (w->buffer)) 347 NILP (w->buffer))
348 return Qnil; 348 return Qnil;
349 349
350 /* Redisplay code that we use relies on GC not happening. Make it 350 /* Redisplay code that we use relies on GC not happening. Make it
351 so. */ 351 so. */
352 count = specpdl_depth (); 352 count = begin_gc_forbidden ();
353 record_unwind_protect (restore_gc_inhibit,
354 make_int (gc_currently_forbidden));
355 gc_currently_forbidden = 1;
356 353
357 ddla = Dynarr_new (display_line); 354 ddla = Dynarr_new (display_line);
358 /* generate some display lines */ 355 /* generate some display lines */
359 generate_displayable_area (w, WINDOW_GUTTER (w, pos), 356 generate_displayable_area (w, WINDOW_GUTTER (w, pos),
360 FRAME_LEFT_BORDER_END (f), 357 FRAME_LEFT_BORDER_END (f),
364 FRAME_BOTTOM_BORDER_START (f) 361 FRAME_BOTTOM_BORDER_START (f)
365 - FRAME_TOP_BORDER_END (f), 362 - FRAME_TOP_BORDER_END (f),
366 ddla, 0, 0); 363 ddla, 0, 0);
367 364
368 /* Let GC happen again. */ 365 /* Let GC happen again. */
369 unbind_to (count, Qnil); 366 unbind_to (count);
370 367
371 ret = make_int (calculate_gutter_size_from_display_lines (pos, ddla)); 368 ret = make_int (calculate_gutter_size_from_display_lines (pos, ddla));
372 free_display_lines (ddla); 369 free_display_lines (ddla);
373 370
374 return ret; 371 return ret;