Author: fireball
Date: Tue May 10 15:43:55 2011
New Revision: 51666

URL: http://svn.reactos.org/svn/reactos?rev=51666&view=rev
Log:
[NTOSKRNL]
- Sam Arun Raj Seeniraj: ObpLookupObjectName() used to reparse endlessly when a 
symlink points to itself, preventing this by limiting number of reparse 
attemtps.
See issue #993 for more details.

Modified:
    trunk/reactos/ntoskrnl/ob/obname.c

Modified: trunk/reactos/ntoskrnl/ob/obname.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ob/obname.c?rev=51666&r1=51665&r2=51666&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/ob/obname.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ob/obname.c [iso-8859-1] Tue May 10 15:43:55 2011
@@ -544,7 +544,7 @@
     }
 
     /* Reparse */
-    while (Reparse)
+    while (Reparse && MaxReparse)
     {
         /* Get the name */
         RemainingName = *ObjectName;
@@ -795,6 +795,7 @@
                 {
                     /* Reparse again */
                     Reparse = TRUE;
+                    --MaxReparse;
 
                     /* Start over from root if we got sent back there */
                     if ((Status == STATUS_REPARSE_OBJECT) ||


Reply via email to