RE: FVWM: FvwmConsole

From: Grant McDorman <grant_at_isgtec.com>
Date: Wed, 10 Jul 1996 16:19:58 -0400 (EDT)

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

This archive was generated by hypermail 2.3.0 : Mon Aug 29 2016 - 19:37:59 BST