Hi ,

   We're using Prototype and have memory leak issue.  One of it seems to be 

54 function create() { 
65 klass.subclasses = []; 
67 if (parent) {
68 subclass.prototype = parent.prototype;
69 klass.prototype = new subclass;
70 parent.subclasses.push(klass);
71 }

         Please note line 65 and 70 which define an Array as "subclasses" 
and push content into it.  However, I'm grepped whole codes and it seems 
this variable is not used anywhere.  On the other hand, it will cause the 
created "klass" is referenced by parent and is never freed by Garbage 
Collection.  If I run this function repeatedly:

         function() {
             var klass = Class.create(parent);
         It will cause memory leak because klass is referenced by parent.

         Are there anyone know this ?  
        Thanks for your reply..

Erwin Pan

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To view this discussion on the web visit 
To post to this group, send email to prototype-scriptaculous@googlegroups.com.
To unsubscribe from this group, send email to 
For more options, visit this group at 

Reply via email to