Works OK here, though I had to delete DoubleBuffered and ParentDoubleBuffered from udlgform.lfm.Do you mean it does not produce the gtk error using an earlier versions of Lazarus?
the dialog is never destroyedIt is never destroyed in the function call code, true. But Application is explicitly made the Owner in the inherited constructor (it is not assumed), so other LCL code takes care of freeing the dialog and its controls.
Do you mean it does not produce the gtk error using an earlier versions of Lazarus?
DoubleBuffered is just there for use on Windows. AFAIK it has no effect on Linux.
It is never destroyed in the function call code, true. But Application is explicitly made the Owner in the inherited constructor (it is not assumed), so other LCL code takes care of freeing the dialog and its controls.