[Lazarus] TWinControl.WMSize loop on WinCE

patspiper patspiper at gmail.com
Mon Feb 9 20:55:59 CET 2015

I have finally found the trigger, though not the cause, of the dreaded 
'TWinControl.WMSize loop detected' exception that prevents the use of 
TCalendarDialog, TDateEdit, and TDateTimePicker with WinCE 
(http://bugs.freepascal.org/view.php?id=21282). These 3 controls consist 
of a TCalendar (with either Autosize=True or Align<>alNone) embedded on 
a form. It is this particular autosizing/aligning which triggers the 
exception as setting Autosize to False and Align to AlNone works well.

TCalendar's width is 220 while the screen's width is 240 (my WinCE 
device). I tried to reproduce the error on a Linux desktop by enlarging 
TCalendar to be almost as wide as the screen with no success.

Any hints/ideas on what might be going on here?

Note: I have attached a patch (for testing) to the bug report, but this 
is a workaround and not THE solution.


More information about the Lazarus mailing list