Yoshiki Hayashi <yoshiki(a)xemacs.org> writes:
Mike Fabian <mike.fabian(a)gmx.de> writes:
> > (defun delete-and-split ()
> > (interactive)
> > (delete-other-windows)
> > (split-window))
> > (split-window-vertically)
> > (insert "が")
> > (backward-char)
> > (redraw-frame)
> > (delete-and-split)
> > Fatal error: assertion failed, file
/deb-huge/home/gunnar/src/XEmacs/xemacs/src/objects.h, line 143, RECORD_TYPEP (obj,
&lrecord_font_instance)
> >
> > [... rest of backtrace see Gunnar's original message,
> > Message-ID: <874sdmtok3.fsf(a)eng.cam.ac.uk> ...]
>
> Gunnar offered the following patch, which I am using all the time
> since then and apply to every new release of XEmacs (21.1 and 21.2):
Sorry for late answer but my time and expertise are limited.
I think this is a right patch but I'm not 100% sure because
I don't understand redisplay.
The problem is, Fsplit_window incorrectly invalidates face
cache when splitted window has no parents. This doesn't
make sense because Fsplit_window only adds new modeline
between windows and scrolls window to make point visible.
They don't change any faces. Function and variable names
are very cryptic in these functions. I'll probably refactor
it when I have some more time.
2000-12-04 Yoshiki Hayashi <yoshiki(a)xemacs.org>
* window.c (Fsplit_window): Don't invalidate face cache.
Thank you very much, it seems to work OK now in XEmacs 21.2 (beta46)
"Urania".
--
Mike Fabian <mfabian(a)suse.de>
http://www.suse.de/~mfabian