[Mono-bugs] [Bug 499600] New: Mono won't start with paths that contains non-ASCII character and MS .Net Fx is not installed

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Wed Apr 29 22:02:54 EDT 2009


http://bugzilla.novell.com/show_bug.cgi?id=499600


           Summary: Mono won't start with paths that contains non-ASCII
                    character and MS .Net Fx is not installed
    Classification: Mono
           Product: Mono: Runtime
           Version: SVN
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: Normal
          Priority: P5 - None
         Component: misc
        AssignedTo: mono-bugs at lists.ximian.com
        ReportedBy: sapikachu at gmail.com
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---


Created an attachment (id=289079)
 --> (http://bugzilla.novell.com/attachment.cgi?id=289079)
Purposed patch

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.0; zh-CN; rv:1.9.0.9)
Gecko/2009040821 Firefox/3.0.9 GTB5 (.NET CLR 3.5.30729)

This problem will occur if all of the following conditions are met:
1. The GAC path or application path contains non-ASCII character(e.g. Chinese
characters)
2. MS .Net Framework is not installed in the system.

Mono will report cannot load mscorlib or cannot load assembly in the case. 

Reproducible: Always

Steps to Reproduce:
1. Ensure .Net Fx is not installed.
2. Put mono and the application into a folder which name contains non-ASCII
character (I have only tested Chinese characters, but I an sure that the same
applies to other Asia languages).
3. Start the application using mono.
Actual Results:  
The application won't start.

Expected Results:  
The application should start.

After my investigation, this problem is caused by encoding of the path. fopen
in msvcrt.dll (which is used in win32 for opening assembly if .Net Fx is not
present in the system) accept the path in system encoding, but mono internally
uses UTF-8 and passes UTF-8 path to fopen.

I have fixed this problem in the 2.4 tarball, tested on some machines and it
worked very well. But I have found that in SVN head the fopen call moved to
mono-filemap.c, so I made a new patch of that. Note that it is migrated from my
2.4 patch, although I don't have time to test it, it shouldn't have any
problem.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the mono-bugs mailing list