Sadly, this is a problem with the structure of the FAT12/16 format.  The way
the FAT (file allocation table) uses pointers to clusters allows for
multiple 'links' to files or folders, including the root.  This is an
unsupported feature of the filesystem and can be used to great effect on
devices like MP3 players to organize files in many folders, with the data
only stored once.

The reason it's unsupported: if you successfully unlink/delete one reference
to the file, all references become invalid.  Microsoft calls this
'cross-linked files' and the problem is most easily repaired using ScanDisk.
There is no current way to solve this on the Palm directly. 

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Jan
Slodicka
Sent: Friday, June 04, 2004 6:05 AM
To: Palm Developer Forum
Subject: VFS driver bug?

Hello

I just made another strange experience with the card.

Somehow we manage to produce a root level directory ("/xx/") that acted as a
link to the card root ("/").
When browsing, the directory showed the identical files/subdirs as the root
- among them also itself. A clear recursion and all programs (file
managers) that we tested failed here once they had to do a recursive scan -
they mostly crashed when the memory was excerpted.

The directory could not be deleted by VFSFileDelete (vfsErrDirNotEmpty) and
VFSFileGetAttributes returned a single attribute - vfsFileAttrDirectory.

I was about to reformat the card, when I decided to try PocketPC. Here the
directory was shown as empty, could be copied and deleted. However, the
copied directory is furtheron unreadable under Palm, but at least the
recursion disappeared.

Does anybody have any idea how to cope with such situation? (I mean on
Palm.)

With best regards,
    Jan Slodicka



--
For information on using the Palm Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/



-- 
For information on using the Palm Developer Forums, or to unsubscribe, please see 
http://www.palmos.com/dev/support/forums/

Reply via email to