[gpodder-devel] Hangs when trying to close the user-settings dialog

  • From: bjoernr at sensewave.com (Bjørn Rasmussen)
  • Date: Wed, 12 Sep 2007 19:18:27 +0200

On Wednesday 12 September 2007 01:00:56 Thomas Perl wrote:
> Hello, Bjorn!
>
> On Tue, 2007-09-11 at 18:27 +0200, Bj??rn Rasmussen wrote:
> > Found the syntax myself.  Installed the gpodder rpm on my i386 based
> > laptop (rpm = pygtk2-2.10.6-1.i386.fc7).  On this machine I don't have
> > the "Hangs when trying to close the        user-settings   dialog" -
> > problem, even though both run Fedora 7, updated at the same time from
> > the same yum repository.  The difference is that the troubled machine
> > is a x86_64 architecture (rpm = pygtk2-2.10.6-1.x86_64.fc7).
>
> So, the problem is obviously related to the 64-bit platform (or
> pygtk/gtk package for it), right?
>
> Can you provide some more information as to what of the preferences
> dialog doesn't work or is it that the whole dialog doesn't work and
> doesn't save settings?

Everything works ok to the point where you close the window.  Then the gpodder 
freezes consuming all available cpu power.  You cannot quit the normal way, 
you have to kill the process.

... testing with "strace gpodder" ....

Looks like strace (system call trace) reveals the problem:

futex(0xc6c9b0, FUTEX_WAKE, 1)          = 0
futex(0xc6c9b0, FUTEX_WAKE, 1)          = 0
stat("/home/bjoern/.wine/drive_c/windows/profiles/bjoern/Min      
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profile
s/bjoern/Min musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profil
es/bjoern/Min musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.wine/drive_c/windows/profiles/bjoern/Min 
musikk/.xmoto/LCache/i14.blv", {st
_mode=S_IFREG|0644, st_size=1947, ...}) = 0
futex(0xc6c9b0, FUTEX_WAKE, 1)          = 0

Here strace reveals a loop (the very long stat call) in the filesystem.  So 
gpodder didn't freeze after all.  It's doing an endless file search.


Looks like gpodder scans the users homedirectory after the Close-button is 
clicked for some reason.  My homedirectory contains ".wine", which includes 
symbolic links:

$ pwd
/home/bjoern/.wine/drive_c/windows/profiles

$ ls -l bjoern/
totalt 100
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Cookies
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Favoritter
drwxrwxr-x 5 bjoern bjoern 4096 2007-07-12 19:59 Lokale innstillinger
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Maler
lrwxrwxrwx 1 bjoern bjoern   12 2007-07-12 19:59 Mine bilder -> /home/bjoern
lrwxrwxrwx 1 bjoern bjoern   12 2007-07-12 19:59 Mine 
dokumenter -> /home/bjoern
lrwxrwxrwx 1 bjoern bjoern   12 2007-07-12 19:59 Mine 
videoklipp -> /home/bjoern
lrwxrwxrwx 1 bjoern bjoern   12 2007-07-12 19:59 Min musikk -> /home/bjoern
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 NetHood
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Programdata
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 SendTo
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Siste
lrwxrwxrwx 1 bjoern bjoern   20 2007-07-12 19:59 
Skrivebord -> /home/bjoern/Desktop
drwxrwxr-x 2 bjoern bjoern 4096 2007-07-12 19:59 Skrivere
drwxrwxr-x 3 bjoern bjoern 4096 2007-07-12 19:59 Start-meny

As you see, many links that can cause an endless loop.


The working i386 machine doesn't contain the .wine directory.  All 
gpodder-users that have links pointing back in the filesystem, will get the 
same problem as me.

I guess this must be considered a bug.


Best regards Bjoern :-)

>
>
> Thomas
>
>
> _______________________________________________
> gpodder-devel mailing list
> gpodder-devel at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/gpodder-devel



-- 
Bj?rn Rasmussen

Adr:    Moneheia 47, 4656 Kristiansand
Tlf:    38 04 50 05
Mbl:    911 27367
Epost:  bjoernr at sensewave.com


Other related posts: