Hi,

I am porting a pygtk application to maemo. It works alright, but I noticed
that it was consuming lot of memory, preventing me from opening other
applications.

When I investigated, I found that my python application was forking 4 more
instances of itself, each one identical in memory footprint. Thus they
consumed nearly 60-70% of my memory.

So I ran my application using pdb and narrowed down to a code segment that
was leading to multiple instances of the process. It turned out that when I
call run() on hildon.fileChooserDialog object, the dialog opens and at that
moment in the "top" I see 4 more instances being forked.

I fail to understand this behavior. I replaced the hildon widgets by pure
gtk widgets and I see similar behavior, except that 2 more instances get
forked. Also when using gtk.FileChooserDialog, these new instances get
created in the instantiation of the dialog object, rather than call to
run(). (code included below)

So to further explore the problem, I ran same application on my desktop with
gtk widgets. But I verified that when fileChooserDialog's run is called,
there are no additional instances of python.

I am running this code on n770, with 2007 HE and python2.5 runtime. My
application code is pure python and not using any additional libraries. In
fact following would be a simpler version of it to reproduce the problem:

import gtk
import hildon

#window = gtk.Window(gtk.WINDOW_TOPLEVEL)

#fileChooser = gtk.FileChooserDialog(
#       title="Choose a photo to publish",
#       buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
#       gtk.STOCK_OK, gtk.RESPONSE_OK))

fileChooser = hildon.FileChooserDialog(
        window,gtk.FILE_CHOOSER_ACTION_OPEN)


result = fileChooser.run()

if result == gtk.RESPONSE_OK:
        print fileChooser.get_filename()

Do you have any tips, as to what might be going wrong?

This problem is fatal at least on n770 - it will trigger low memory message
when other applications are used on the side.

Any help will be useful.

Thanks,
-- 
---
Jayesh
_______________________________________________
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers

Reply via email to