On 10-Jul-96 19:50:47 chabe04_at_cai.com wrote:
> > ===>Grant McDorman writes:
> 
>     Grant> One of the most likely reasons it doesn't work is that it is running
>     Grant> wildly off the end of a malloc'd array (by about two elements), and
>     Grant> thus stomping memory.
> 
>     Grant> There are also some initializers that are illegal (but presumably
>     Grant> accepted by gcc).
> 
>     Grant> With those two problems fixed, it ran fine on Solaris 2.4 (with
>     Grant> Sun's compiler, not gcc).
> 
> I tried building it using gcc 2.7.2.  Does not seem to work.  When I start it,
> it just freezes up my computer (I have to remember where the hell is the off
> switch, just to show that I seldom close it). Did you have the same kind of
> problem(s)?  I do have Solaris 2.4 running on a Sparc 5.
No, but the result of memory corruption is unpredictable. It may be that
something (malloc heap management?) gets into a tight loop with this
corruption on your system.
I just got a SIGSEGV in malloc.
>     Grant> I can send the patches if anyone is interested.
> 
> I'm definitely interrested!
> 
> 
> Thanks and my best regards
Okay, here you go.
Grant McDorman <grant_at_isgtec.com>
                                ISG Technologies, Inc.
*** FCtest.c.orig	Mon Feb 26 14:33:04 1996
--- FCtest.c	Wed Jul 10 13:18:06 1996
***************
*** 27,33 ****
  
  void main(int argc, char **argv){
    char *tmp, *s;
!   char client[120];
    char **eargv;
    int i,j;
    char *xterm_a[] = {"-title", name,"-name",name, "-e",client,NULL };
--- 27,33 ----
  
  void main(int argc, char **argv){
    char *tmp, *s;
!   static char client[120];
    char **eargv;
    int i,j;
    char *xterm_a[] = {"-title", name,"-name",name, "-e",client,NULL };
*** FvwmConsole.c.orig	Tue Feb 27 19:10:41 1996
--- FvwmConsole.c	Wed Jul 10 14:59:04 1996
***************
*** 26,32 ****
  
  void main(int argc, char **argv){
    char *tmp, *s;
!   char client[120];
    char **eargv;
    int i,j;
    char *xterm_a[] = {"-title", name,"-name",name, "-e",client,NULL };
--- 26,32 ----
  
  void main(int argc, char **argv){
    char *tmp, *s;
!   static char client[120];
    char **eargv;
    int i,j;
    char *xterm_a[] = {"-title", name,"-name",name, "-e",client,NULL };
***************
*** 57,63 ****
          exit(1);
    }
  
!   if( ( eargv =(char **)safemalloc((argc-2)*sizeof(char *)) ) == NULL ) {
          ErrMsg( "allocation" );
    }
  
--- 57,64 ----
          exit(1);
    }
  
! #define ENARGS ((argc-FARGS+1)+sizeof(xterm_a)/sizeof(xterm_a[1]))
!   if( ( eargv =(char **)safemalloc(ENARGS*sizeof(char *)) ) == NULL ) {
          ErrMsg( "allocation" );
    }
  
End of MIME message
--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to majordomo_at_hpc.uh.edu.
To report problems, send mail to fvwm-owner_at_hpc.uh.edu.
Received on Wed Jul 10 1996 - 15:27:49 BST