Yesterday, I downloaded and installed 1.1.19 on a "clean" system.  I
found a number of bugs and I just reported them to the bug tracker.
Here is the list, in order to avoid duplicate bug reports and more
frustrations for those who are not aware of these bugs:
- #8148: gimp cannot be built because gimp-perl depends on "msgmerge".
- #8149: select by color crashes immediately
- #8150: gimp crashes when loading an invalid brush
- #8151: some layer names disappear in the layers dialog

The bugs #8148, #8149 and #8151 are new to 1.1.19, because they were
working fine in 1.1.18.  The bug #8150 is not new and has probably
been there for a long time because I was able to repeat it with some
older versions of the Gimp that I still have.

Known workarounds:
- #8148: Configure the Gimp with "configure --disable-perl".
- #8149: Do not use "<Image>/Select/By color" until the bug is fixed.
- #8150: Be careful when installing new brushes.  ;-)
- #8151: click on the missing layer names.  Sometimes they appear.

One problem that worries me a bit is that the Gimp crashes immediately
when loading an invalid brush.  As you can see if you read the bug
report #8150, you can create an invalid brush easily by putting random
stuff in a file, naming it with the extension .gbr, .gpb or .gih and
storing it in your ~/.gimp-1.1/brushes directory or in the system-wide
brushes directory.  What happens then is that the Gimp crashes as soon
as you click on the "refresh" button in the brushes dialog.  It will
also crash immediately when starting, so you will not be able to start
the Gimp until you delete the file.

Of course, putting garbage in a brush file is not a very sensible
thing to do and I could expect some problems when the Gimp tries to
load the file.  Well, in an ideal world the Gimp would report and
error and ignore the brush instead of crashing.  If I have the time, I
will have a look at the code, add some safeguards and submit a patch.

But it is unfortunately easy to create an invalid brush by using
incorrect parameters in the gpb plug-in (which handles the .gpb and
.gih formats).  I have to admit that I discovered this bug by trying
to save a pixmap brush without understanding the meaning of all
parameters in <Save>/GIH.  After I saved my test brush, I clicked
"refresh" in the brushes dialog and the Gimp was gone.

So my question is: could someone explain what these parameters mean
and how to save a .gih brush in the correct format?  Specifically, I
have a set of layers that were originally grabbed from a .GIF
animation and I would like to save them as a pixmap brush, so that I
can follow a path with that brush and get some nice effects.  I tried
various tricks with the guides, with the number of cells in the .gih
save dialog and so on, but I did not manage to get the effect that I
wanted.  I only managed to crash the Gimp...  :-(

Understanding how the thing is supposed to work would help me to fix
the bug and to add proper safeguards in the code (both when saving and
when loading pixmap brushes).

Thanks in advance,

Reply via email to