Author: hbelusca Date: Thu Sep 12 00:16:42 2013 New Revision: 60052
URL: http://svn.reactos.org/svn/reactos?rev=60052&view=rev Log: [NPFS_NEW] Use _SEH2_YIELD when exiting from a _SEH2 block via a return or a goto (otherwise --> bug in the stack). This limitation will be removed in SEH3, but it's not used at the moment.
Modified: trunk/reactos/drivers/filesystems/npfs_new/datasup.c trunk/reactos/drivers/filesystems/npfs_new/fsctrl.c trunk/reactos/drivers/filesystems/npfs_new/writesup.c
Modified: trunk/reactos/drivers/filesystems/npfs_new/datasup.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/npfs_ne... ============================================================================== --- trunk/reactos/drivers/filesystems/npfs_new/datasup.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filesystems/npfs_new/datasup.c [iso-8859-1] Thu Sep 12 00:16:42 2013 @@ -402,7 +402,7 @@ _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { NpFreeClientSecurityContext(ClientContext); - return _SEH2_GetExceptionCode(); + _SEH2_YIELD(return _SEH2_GetExceptionCode()); } _SEH2_END;
Modified: trunk/reactos/drivers/filesystems/npfs_new/fsctrl.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/npfs_ne... ============================================================================== --- trunk/reactos/drivers/filesystems/npfs_new/fsctrl.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filesystems/npfs_new/fsctrl.c [iso-8859-1] Thu Sep 12 00:16:42 2013 @@ -336,7 +336,7 @@ } _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { - return _SEH2_GetExceptionCode(); + _SEH2_YIELD(return _SEH2_GetExceptionCode()); } _SEH2_END; } @@ -427,7 +427,7 @@ _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { Status = _SEH2_GetExceptionCode(); - goto Quickie; + _SEH2_YIELD(goto Quickie); } _SEH2_END; }
Modified: trunk/reactos/drivers/filesystems/npfs_new/writesup.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/npfs_ne... ============================================================================== --- trunk/reactos/drivers/filesystems/npfs_new/writesup.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filesystems/npfs_new/writesup.c [iso-8859-1] Thu Sep 12 00:16:42 2013 @@ -97,7 +97,7 @@ _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) { if (AllocatedBuffer) ExFreePool(Buffer); - return _SEH2_GetExceptionCode(); + _SEH2_YIELD(return _SEH2_GetExceptionCode()); } _SEH2_END;