Dear sirs,
proceeding with problems in GUI_MEMDEV_Delete(md) function, I found the following:
- if you call GUI_MEMDEV_Delete(md) and md=0, it works (I saw debugging in assembly that if parameter passed is 0, it returns immediately);
- if you call GUI_MEMDEV_Delete(md) and md!=0, it works ONLY IF md was created (so md!=0) and is still "alive";
- if you call GUI_MEMDEV_Delete(md) and md!=0 but md was previously already deleted, it crashes.
Now, it is clear that there is no reasons to delete an already deleted md, but in a complex application maybe you need to delete ALL memory devices in a certain instant... so you run a for cycle to delete all of them.
Moreover, there is no function to reveal if a memory device is effectively active or if it was deleted (for example, if you use GUI_MEMDEV_GetDataPtr(md) and md was previously deleted, it crashes; I expected that if md is still active it returns a pointer, while if md was already deleted it returns NULL).
Working with emWin 5.18, LPC1788 from NXP, emWin5.18 is the precompiled library donloaded from LPCware web site.
Best regards,
Valter
proceeding with problems in GUI_MEMDEV_Delete(md) function, I found the following:
- if you call GUI_MEMDEV_Delete(md) and md=0, it works (I saw debugging in assembly that if parameter passed is 0, it returns immediately);
- if you call GUI_MEMDEV_Delete(md) and md!=0, it works ONLY IF md was created (so md!=0) and is still "alive";
- if you call GUI_MEMDEV_Delete(md) and md!=0 but md was previously already deleted, it crashes.
Now, it is clear that there is no reasons to delete an already deleted md, but in a complex application maybe you need to delete ALL memory devices in a certain instant... so you run a for cycle to delete all of them.
Moreover, there is no function to reveal if a memory device is effectively active or if it was deleted (for example, if you use GUI_MEMDEV_GetDataPtr(md) and md was previously deleted, it crashes; I expected that if md is still active it returns a pointer, while if md was already deleted it returns NULL).
Working with emWin 5.18, LPC1788 from NXP, emWin5.18 is the precompiled library donloaded from LPCware web site.
Best regards,
Valter