sehang / dokan

Automatically exported from code.google.com/p/dokan
0 stars 0 forks source link

dokan.sys crashes WinXP PAGE_FAULT_IN_NONPAGED_AREA #137

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

Create directory virt on your c: drive
Create directories dirA and dirB in c:\virt
Copy small file into dirB
Mount mirror volume using: mirror.exe /r c:\virt /l y /d /s
Open drive Y: and in Explorer move dirB into dirA using drag&drop
Last operation crashes system with blue screen
System does not crash if dirB is empty

What is the expected output? What do you see instead?
dirB successfuly moved to dirA

What version of the product are you using? On what operating system?
0.5.1 official build.   WindowsXP 32-bit SP3

Original issue reported on code.google.com by Iwan.Daniel@gmail.com on 5 Mar 2010 at 6:17

GoogleCodeExporter commented 9 years ago
Hi,
I couldn't reproduce BSOD. Does this occur every time you move a directory with 
a file?
Please give me your crash dump file, it is in C:\Windows\minidump.

Thanks,

Original comment by asa...@gmail.com on 5 Mar 2010 at 10:16

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
I can see the bluescreen too.

in Create.c of dokan.sys, 
we need to check the length relateFileObject->filename, may be. 

if (relatedFileObject->FileName.Length > 0)
{   
     if (relatedFileObject->FileName.Buffer[relatedFileObject->FileName.Length/sizeof
(WCHAR)-1] != '\\') 
{
   needBackSlashAfterRelatedFile = TRUE;
   fileNameLength += sizeof(WCHAR);
                }           
            }
...

I wonder if you can comment the RelatedFileObject means.

Original comment by digerat...@gmail.com on 6 Mar 2010 at 7:58

GoogleCodeExporter commented 9 years ago
RelatedFileObject is the parent directly of target file. That is sometimes 
specified by OS 
when opening a file.
relateFileObject->FileName.Length is suspicious. I fixed the repository.

FYI:
You can get PDB file here:
http://code.google.com/p/dokan/source/browse/#svn/release/dokan-0.5.1/wxp/sys
And source:
http://code.google.com/p/dokan/source/browse/#svn/tags/dokan-0.5.1

Original comment by asa...@gmail.com on 6 Mar 2010 at 8:27

GoogleCodeExporter commented 9 years ago
Thanks, works like a charm.
Could you make a build with those changes.
We have problems with uncertified drivers on Windows Vista (test mode is not a
solution unfortunately).

Much appreciated

Original comment by Iwan.Daniel@gmail.com on 8 Mar 2010 at 12:23