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 AlignalNone) 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.
Stephano
