And is " CREATEBITMAP(3295) at mainunit.pas:204" the function in which you have the try/except?
----------------
Anyway it will be more important to first find out what causes the SigSegV.
The SigSegV most likely means that some of your programs memory got seriously corrupted (eg maybe you wrote to an object that you previously freed, or never created).
Once you got memory corruption you get all kind of unexpected behaviour.
The bad news is, that such SigSegV are rather hard to find.
Compile your application with the following settings (add them under custom options, it the project options
-Criot -CR -gh -Sa -O-
See if that changes anything (if you get a diff error).
Btw, what OS are you using?
--------------------
Also set a breakpoint on the following lines:
try
MyBitmap.Canvas.FillRect(0,0,ImgWidth,ImgHeight); // <<<< breakpoint
except
On E :Exception do
begin
ShowMessage(E.Message); // <<<< breakpoint
end;
And on whatever line follows after this code.
So you know which line where passed when the error happens.
When the exception is caught by the debugger, select break, and then press F8 until you get to the ShowMessage.