After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 359538 - Invoking gradient selection from script-fu hangs gimp
Invoking gradient selection from script-fu hangs gimp
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: libgimp
2.3.x
Other Windows
: Normal major
: ---
Assigned To: Tor Lillqvist
GIMP Bugs
: 356904 363121 363947 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-10-04 09:45 UTC by ptk
Modified: 2008-01-15 14:09 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Suggested workaround (3.08 KB, patch)
2006-10-12 18:46 UTC, Tor Lillqvist
none Details | Review

Description ptk 2006-10-04 09:45:54 UTC
Please describe the problem:
When trying to change GRADIENT option gimp hangs up.

Steps to reproduce:
1. Make image whatever you want
2. Go to Script-Fu Lava plugin
3. Try to change gradient


Actual results:
Gimp hangs up

Expected results:


Does this happen every time?
Yes

Other information:
Comment 1 Sven Neumann 2006-10-04 12:37:15 UTC
Works fine for me. Please specify operating system and anything else that might help to identify the problem.
Comment 2 ptk 2006-10-04 12:56:34 UTC
WindowsXP SP2
Comment 3 Sven Neumann 2006-10-04 14:07:29 UTC
ptk, you are really overdoing it. If you don't learn how to file proper bug reports and if you don't have the time to write full sentences and to use the menus in this bug registration form, than you should better stop filing bug reports.

This bug report should have had the Operating System field filled out, you should have mentioned the full path to the script/plug-in that you are running. It also doesn't mention what actually happens. "Gimp hangs up" is not a useful description. It doesn't tell us whether there's a crash or if the application (or the plug-in) just appears not responsive.
Comment 4 MWH 2006-10-04 16:30:34 UTC
I am able to reproduce this problem.  I am using Windows XP SP2 and the latest GIMP and GTK from Sourceforge.  Steps to reproduce are as follows:

Open Image and create a selection

In the Image window, select Filters>Render>Lava

In the "Script-Fu: Lava" window, click the "Gradient" button.

After a pause (about 5 seconds) a new window, "Script-Fu Gradient Selection" appears, but it remains a blank white, even after waiting several minutes.

At this point, the Windows Task Manager shows all GIMP related windows as Not Responding, but CPU and memory usage remain normal.

After closing the "Script-Fu: Lava" window, two GIMP Message windows appear.  The first states simply "Plug-in crashed: "script-fu.exe"
(C:\Program Files\GIMP-2.3\lib\gimp\2.0\plug-ins\script-fu.exe)."

The second GIMP Message window has two messages.  One is: "PDB calling error: Procedure 'temp-procedure-number-0' not found" and the other is: "Unable to run GimpPdbProgress callback.  The corresponding plug-in may have crashed."

These messages only appear if the "Toolbox and other docks are transient to the active image window" preference is not selected.

I will also note that the Tiny-fu lava seems to work fine.

I hope this information is helpful.
Comment 5 weskaggs 2006-10-04 19:50:58 UTC
MWH, thanks.  Removing NEEDINFO since comment #4 provides enough information at this point, and confirming on the basis of it as well.
Comment 6 Sven Neumann 2006-10-05 06:05:49 UTC
Bill, please do not confirm bug reports unless you can reproduce them or we got several reports describing the problem.

This might be a problem with Script-Fu and Tiny-Fu installed at the same time?
Comment 7 Sven Neumann 2006-10-05 06:28:20 UTC
Sorry, didn't realize that someone else acknowledged the problem. Perhaps I should not do bug maintainance work at this time of the day.
Comment 8 Kevin Cozens 2006-10-05 19:22:52 UTC
Comment #4 indicates the problem occurs when trying to select a different Gradient in the dialog box. That doesn't sound like a problem that has anything to do with Script-Fu and Tiny-Fu being installed at the same time.
Comment 9 MWH 2006-10-06 03:26:50 UTC
After some additional poking around, I've found the exact same behavior I described above when clicking the "Gradient" button in the Spyrogimp and Fractal Explorer dialogs, both also under Filters>Render.  However, with GFIG, which is also selected from Filters>Render, if the fill type is changed to one of the gradient choices, clicking the gradient select button does NOT cause any problem.
Comment 10 Sven Neumann 2006-10-06 06:44:35 UTC
Kevin, the interaction of these widgets with the core are non-trivial. Temporary procedures are being used to create a core dialog when the select button widget is clicked. There might very well be strange interactions between two extensions running at the same time. It's unlikely but not impossible.

Still, it is most likely that the problem is in libgimp and completely unrelated to tiny-fu.
Comment 11 Michael Schumacher 2006-10-06 08:33:16 UTC
BTW, the hang does not happen for the gradient selection in the Script-Fu Test Sphere script, which is located in the Xtns menu.
Comment 12 Sven Neumann 2006-10-06 09:09:56 UTC
This could be a problem with transient windows then. If started from an image, the plug-in dialog is transient for the image window. In 2.3.11, the popup dialog for gradient selection which is created by the core isn't (this has changed in CVS). It seems that there's a problem in GTK+ with respect to transient windows.

Bug #359061 could be related.
Comment 13 MWH 2006-10-06 11:17:54 UTC
Just to clarify something I said in Comment #4:  The error messages only appear if the "Toolbox and other docks are transient to the active image window" preference is not selected, but the behavior of Gimp freezing when clicking the Gradient button occurs no matter whether this preference is selected or not.
Comment 14 Tor Lillqvist 2006-10-12 18:46:46 UTC
Created attachment 74592 [details] [review]
Suggested workaround

This at least prevents the hang...
Comment 15 Sven Neumann 2006-10-16 11:06:23 UTC
It prevents the bug but it makes GIMP pretty much unusable on Win32 :-(
Comment 16 Tor Lillqvist 2006-10-16 11:57:09 UTC
(Sven said on IRC that even without cross-process transient-for it shouldn't be any worse than 2.2 was, though ...)

Patch committed.

2006-10-16  Tor Lillqvist  <tml@novell.com>

	* libgimp/gimpui.c (gimp_window_set_transient_for)
	* app/widgets/gimpwidgets-utils.c (gimp_window_set_transient_for):
	These functions are used for cross-process transient-for, which
	causes hangs on Win32. Bypass on Win32 for now. (#359538)
Comment 17 Sven Neumann 2006-10-16 12:43:11 UTC
*** Bug 356904 has been marked as a duplicate of this bug. ***
Comment 18 Michael Schumacher 2006-10-18 20:43:26 UTC
*** Bug 363121 has been marked as a duplicate of this bug. ***
Comment 19 ptk 2006-10-19 18:36:53 UTC
Note that windows version of Gimp without this option is the most bothersome program I've ever seen on this platform.
Comment 20 Michael Schumacher 2006-10-19 18:54:44 UTC
Well, this is why the 2.3.x releases are also called unstabled development releases and are not intended for production use.
Comment 21 Michael Schumacher 2006-12-27 23:49:03 UTC
*** Bug 363947 has been marked as a duplicate of this bug. ***