This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: XEmacs-21.4.14-2 consistently crashes


>>>>> "Thomas" == Thomas Demmer writes:

    Thomas> Hi all,

Hi Thomas, finally you send the message to the list :-)

    Thomas> I can reliably crash XEmacs by the following procedure:

FWIW, me too. But since I will *never* use the Win32 version and have
never used the Win32 version as already stated, somebody who is
interested has to debug this or try sending a bug report to xemacs-beta.

As you stated the X version works fine. And that's what I use since
years with no problems except sometimes when using cygwin snapshots. But
these problems have always been adressed.

But anyway I took a look in the source code and found the following:

  for (i = 0; i < nruns; i++)
    {
      Lisp_Object font = FACE_CACHEL_FONT (cachel, runs[i].charset);
      Lisp_Font_Instance *fi = XFONT_INSTANCE (font);
      int this_width;

      if (EQ (font, Vthe_null_font_instance))
	continue;

      mswindows_update_dc (hdc, cachel->foreground,
			   NILP(bg_pmap) ? cachel->background : Qnil, Qnil);
      mswindows_set_dc_font (hdc, font, cachel->underline, cachel->strikethru);

      this_width = mswindows_text_width_single_run (hdc, cachel, runs + i);
      
      /* cope with fonts taller than lines */
      if ((int) fi->height < (int) (height + dl->clip + dl->top_clip))
	{
	  int clear_start = max (xpos, clip_start);
	  int clear_end = min (xpos + this_width, clip_end);
	  
	  {
	    redisplay_clear_region (window, findex, clear_start,
				    DISPLAY_LINE_YPOS (dl), 
				    clear_end - clear_start,
				    height);
	    /* output pixmap calls this so we have to recall to get correct
	       references */
	    cachel = WINDOW_FACE_CACHEL (w, findex);
	  }
	}

      assert (runs[i].dimension == 1);	/* #### FIXME: Broken when Mule? */
      ExtTextOut (hdc, xpos, dl->ypos,
		  NILP(bg_pmap) ? ETO_CLIPPED | ETO_OPAQUE : ETO_CLIPPED,
		  &rect, (char *) runs[i].ptr, runs[i].len, NULL); 

      xpos += this_width;
    }


It seems your problem is known already as the code states FIXME. The cygwin
build of XEmacs is with Mule support and I will not change that. 

So you can try building your own version from source without
configure for Mule or try sending a bug report to xemacs-beta@xemacs.org
and see if somebody can help you out.

    Thomas> Thanks for your help.

No prob

    Thomas> Thomas Demmer

Ciao
  Volker


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]