cvsuser     03/01/14 00:09:39

  Modified:    config/gen/makefiles classes.in root.in
               .        core.ops dod.c
  Log:
  mem leak in nci + skip bug; make progclean
  
  Revision  Changes    Path
  1.7       +5 -2      parrot/config/gen/makefiles/classes.in
  
  Index: classes.in
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/makefiles/classes.in,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -w -r1.6 -r1.7
  --- classes.in        18 Dec 2002 04:25:32 -0000      1.6
  +++ classes.in        14 Jan 2003 08:09:36 -0000      1.7
  @@ -27,8 +27,11 @@
   
   ${pmc_build}
   
  -clean:
  -     $(RM_F) *.c *$(O) *.h
  +clean:       progclean
  +     $(RM_F) *.c *.h
  +
  +progclean:
  +     $(RM_F) *$(O)
   
   update:
        cvs -q update -dP
  
  
  
  1.65      +8 -4      parrot/config/gen/makefiles/root.in
  
  Index: root.in
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/makefiles/root.in,v
  retrieving revision 1.64
  retrieving revision 1.65
  diff -u -w -r1.64 -r1.65
  --- root.in   5 Jan 2003 00:41:53 -0000       1.64
  +++ root.in   14 Jan 2003 08:09:36 -0000      1.65
  @@ -557,24 +557,28 @@
   #
   ###############################################################################
   
  -clean : testclean
  +clean : testclean progclean
        ${cg_r}
  -     $(RM_F) $(O_FILES)
        $(RM_F) *.s
        $(RM_F) $(FLUID_FILES)
  -     $(RM_F) $(TEST_PROG) test_main$(O) $(PDUMP) pdump$(O)
        $(RM_F) examples/assembly/mops${exe} examples/assembly/mops.c
        $(RM_F) examples/assembly/mops$(O) examples/assembly/mops.pbc
        $(RM_F) examples/mops/mops$(O) examples/mops/mops${exe}
  -     $(RM_RF) blib
        $(RM_F) *~
        cd docs && $(MAKE) clean && cd ..
        cd classes && $(MAKE) clean && cd ..
        cd languages && $(MAKE) clean && cd ..
   
  +progclean:
  +     $(RM_F) $(O_FILES)
  +     $(RM_F) $(TEST_PROG) test_main$(O) $(PDUMP) pdump$(O)
  +     $(RM_RF) blib
  +     cd classes && $(MAKE) progclean && cd ..
  +
   testclean :
        $(RM_F) t/op/*.pasm t/op/*.pbc t/op/*.out
        $(RM_F) t/pmc/*.pasm t/pmc/*.pbc t/pmc/*.out
  +     $(RM_F) t/stress/*.pasm t/stress/*.pbc t/stress/*.out
        $(RM_F) t/src/*.o t/src/*.c
   
   realclean : clean
  
  
  
  1.246     +2 -1      parrot/core.ops
  
  Index: core.ops
  ===================================================================
  RCS file: /cvs/public/parrot/core.ops,v
  retrieving revision 1.245
  retrieving revision 1.246
  diff -u -w -r1.245 -r1.246
  --- core.ops  10 Jan 2003 17:04:11 -0000      1.245
  +++ core.ops  14 Jan 2003 08:09:39 -0000      1.246
  @@ -4523,9 +4523,10 @@
   }
   
   op dlfunc (out PMC, in PMC, in STR, in STR) {
  -  const char * name = string_to_cstring(interpreter, ($3));
  +  char * name = string_to_cstring(interpreter, ($3));
   
     Parrot_csub_t p = (Parrot_csub_t)D2FPTR(Parrot_dlsym(($2)->data, name));
  +  free(name);
     if(p == NULL) {
        const char * err = Parrot_dlerror();
        if(err != NULL) {
  
  
  
  1.46      +2 -2      parrot/dod.c
  
  Index: dod.c
  ===================================================================
  RCS file: /cvs/public/parrot/dod.c,v
  retrieving revision 1.45
  retrieving revision 1.46
  diff -u -w -r1.45 -r1.46
  --- dod.c     11 Jan 2003 14:05:10 -0000      1.45
  +++ dod.c     14 Jan 2003 08:09:39 -0000      1.46
  @@ -1,7 +1,7 @@
   /* dod.c
    *  Copyright: (When this is determined...it will go here)
    *  CVS Info
  - *     $Id: dod.c,v 1.45 2003/01/11 14:05:10 leo Exp $
  + *     $Id: dod.c,v 1.46 2003/01/14 08:09:39 leo Exp $
    *  Overview:
    *     Handles dead object destruction of the various headers
    *  Data Structure and Algorithms:
  @@ -541,7 +541,7 @@
       /* Note it */
       interpreter->dod_runs++;
       /* if we don't have more free objects then last, skip next DOD run */
  -    if (total_free <= last_total_free)
  +    if (total_free < last_total_free)
           skip = 1;
       last_total_free = total_free;
       Parrot_unblock_DOD(interpreter);
  
  
  


Reply via email to