Forums | developer.brewmp.com Forums | developer.brewmp.com

Developer

Forums

Forums:

When enumerating files with IFILEMGR_EnumNext(), if the filesystem is 'almost full', IFILEMGR_EnumNext() generates Access violation when there are no more items to enumerate, instead of returning FALSE. If you free some space (about 3MB or so) and run exactly the same binary, everything works fine. Same thing happens on test devices (LG MX500 and Motorola A840) - the device reboots.

This situation was tested on the emulator using a small ramdrive on Windows XP and inserting/removing files to increase/decrease free space.

code used:

boolean ret = IFILEMGR_EnumInit(fMan, "", FALSE)==SUCCESS;

if (ret) {
while(ret = IFILEMGR_EnumNext(fMan, fileInfo)) {
DBGPRINTF("file %s",fileInfo->szName);
}
}

is this something I'm doing wrong? or a bug in the framework? is there a fix or workaround?

On a side note, on the LG MX500 the symptom appears not only when storage is nearly full, but also if there is another app (any app) installed.

If you're not checking for EFS pre-launching your actual app code,You should make one before launching your App and should not launch the same until sufficient memory is available. Seems like your App need much free space at times than it actually gets.

If you're not checking for EFS pre-launching your actual app code,You should make one before launching your App and should not launch the same until sufficient memory is available. Seems like your App need much free space at times than it actually gets.

I am facing the same issue. When using IfileMgr_enumnext the simulator just crashes throwing the same exception!

I am facing the same issue. When using IfileMgr_enumnext the simulator just crashes throwing the same exception!