On July 25, 2002 at 10:40 +0200, Dominik Vogt wrote:
> 
> I've seen two yet.  They have in common that an invalid menu style
> is accessed, for example via (from paint_menu()):
> 
>   MenuStyle *ms = MR_STYLE(mr);
> 
> This expands to
> 
>   MenuStyle *ms = mr->ms->s;
> 

That's right two occured in function 

static void paint_menu(
       MenuRoot *mr, XEvent *pevent, FvwmWindow *fw)
[line 4056 im menus.c]

one in line 4063:

      int bw = MST_BORDER_WIDTH(mr); 

another in line 4117:

      if ((MST_FACE(mr).type != SolidMenu &&
           MST_FACE(mr).type != SimpleMenu &&
           !MST_HAS_MENU_CSET(mr)) ||

In both cases *mr is involved.  I am quite sure that I checked if the
pointer mr or its subpointers were NULL before accessing it to prevent
the seg fault. This check was passed but the seg fault did still
occur. Maybe one of the pointer is not NULL but points to an invalid
segment (However this can happen). I will do a double check of this
test tonight or tommorow.

The third one occured in another function in menus.c. Unfortunately I
can't remember where it was. Maybe it happens again.

Uwe
-- 
+--------------------------------------------------
| Uwe Pross 
|   mailto:[EMAIL PROTECTED]
|   http://www.tu-chemnitz.de/~uwp
+--------------------------------------------------
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [EMAIL PROTECTED]
To report problems, send mail to [EMAIL PROTECTED]

Reply via email to