Do you really need finally clause in this case? It's not the most
beautiful way when doing it via PSEH.
WBR,
Aleksey.
On Oct 10, 2008, at 11:26 PM, pschweitzer(a)svn.reactos.org wrote:
Author: pschweitzer
Date: Fri Oct 10 14:26:42 2008
New Revision: 36709
URL:
http://svn.reactos.org/svn/reactos?rev=36709&view=rev
Log:
Fixed a FIXME
A bit cleaned header
Modified:
branches/pierre-fsd/drivers/filesystems/fastfat/finfo.c
branches/pierre-fsd/drivers/filesystems/fastfat/vfat.h
Modified: branches/pierre-fsd/drivers/filesystems/fastfat/finfo.c
URL:
http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/
filesystems/fastfat/finfo.c?rev=36709&r1=36708&r2=36709&view=diff
======================================================================
========
--- branches/pierre-fsd/drivers/filesystems/fastfat/finfo.c
[iso-8859-1] (original)
+++ branches/pierre-fsd/drivers/filesystems/fastfat/finfo.c
[iso-8859-1] Fri Oct 10 14:26:42 2008
@@ -443,6 +443,10 @@
}
+_SEH_FINALLYFUNC(VfatGetEaInformationFinal_PSEH)
+{
+}
+
static NTSTATUS
VfatGetEaInformation(PFILE_OBJECT FileObject,
PVFATFCB Fcb,
@@ -452,15 +456,19 @@
{
PDEVICE_EXTENSION DeviceExt = DeviceObject->DeviceExtension;
- /* FIXME - use SEH to access the buffer! */
- Info->EaSize = 0;
- *BufferLength -= sizeof(*Info);
- if (DeviceExt->FatInfo.FatType == FAT12 ||
- DeviceExt->FatInfo.FatType == FAT16)
- {
- /* FIXME */
- DPRINT1("VFAT: FileEaInformation not implemented!\n");
- }
+ _SEH_TRY
+ {
+ RtlZeroMemory(Info, sizeof(FILE_EA_INFORMATION));
+ if (DeviceExt->FatInfo.FatType == FAT12 ||
+ DeviceExt->FatInfo.FatType == FAT16)
+ {
+ /* FIXME */
+ DPRINT1("VFAT: FileEaInformation not implemented!\n");
+ }
+ *BufferLength -= sizeof(FILE_EA_INFORMATION);
+ }
+ _SEH_FINALLY(VfatGetEaInformationFinal_PSEH)
+ _SEH_END;
return STATUS_SUCCESS;
}
Modified: branches/pierre-fsd/drivers/filesystems/fastfat/vfat.h
URL:
http://svn.reactos.org/svn/reactos/branches/pierre-fsd/drivers/
filesystems/fastfat/vfat.h?rev=36709&r1=36708&r2=36709&view=diff
======================================================================
========
--- branches/pierre-fsd/drivers/filesystems/fastfat/vfat.h
[iso-8859-1] (original)
+++ branches/pierre-fsd/drivers/filesystems/fastfat/vfat.h
[iso-8859-1] Fri Oct 10 14:26:42 2008
@@ -608,15 +608,7 @@
/* --------------------------------------------------------
string.c */
-VOID
-vfatSplitPathName(PUNICODE_STRING PathNameU,
- PUNICODE_STRING DirNameU,
- PUNICODE_STRING FileNameU);
-
BOOLEAN vfatIsLongIllegal(WCHAR c);
-
-BOOLEAN wstrcmpjoki (PWSTR s1,
- PWSTR s2);
/* -----------------------------------------------------------
fat.c */
@@ -702,6 +694,11 @@
/* -----------------------------------------------------------
fcb.c */
+VOID
+vfatSplitPathName(PUNICODE_STRING PathNameU,
+ PUNICODE_STRING DirNameU,
+ PUNICODE_STRING FileNameU);
+
PVFATFCB vfatNewFCB (PDEVICE_EXTENSION pVCB,
PUNICODE_STRING pFileNameU);