Closed Bug 545080 Opened 15 years ago Closed 15 years ago

When multi-byte letter is included in the path, the detection of plug-in dll fails

Categories

(Core Graveyard :: Plug-ins, defect)

x86
Windows 7
defect
Not set
major

Tracking

(status1.9.2 .4-fixed)

RESOLVED FIXED
Tracking Status
status1.9.2 --- .4-fixed

People

(Reporter: alice0775, Assigned: benjamin)

References

Details

(Keywords: regression, Whiteboard: [fixed-lorentz])

Attachments

(2 files, 1 obsolete file)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.2pre) Gecko/20100208 Firefox/3.6.2 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.3a2pre) Gecko/20100208 Minefield/3.7a2pre ID:20100208050429 When multi-byte letter is included in the path, the detection of plug-in dll fails. Reproducible: Always Steps to Reproduce: 1.Install Minefield in path including the multi-byte letter (for example. D:\トランク\Minefield3.7\ ) 2.Start Minefield 3.Go about:plugins Actual Results: No "Mozilla Default Plug-in"npnul32.dll is detected. Expected Results: "Mozilla Default Plug-in"npnul32.dll should be detected. Regression Window: Works fine: http://hg.mozilla.org/mozilla-central/rev/44c392db6672 Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.3a1pre) Gecko/20091214 Minefield/3.7a1pre ID:20091214045914 Broken: http://hg.mozilla.org/mozilla-central/rev/96e8d529b2d3 Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.3a1pre) Gecko/20091215 Minefield/3.7a1pre ID:20091215045531 Pushlog: http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=44c392db6672&tochange=96e8d529b2d3
Blocks: OOPP
Keywords: regression
Version: unspecified → Trunk
What native codepage/version of Windows are you using? Does D:\トランク\Minefield3.7\ fit into that native codepage? This may be a -DUNICODE problem. Should be easy enough to test, though!
CP932 which is default for Windows 7 x64 Home Premium Japanese edition.
Assignee: nobody → benjamin
Comment on attachment 426055 [details] [diff] [review] Use explicit W functions, make nsPluginInfo fields UTF8 always, rev. 1 - result = ::RegQueryValueEx(keyloc, TEXT("InstallDir"), NULL, &type, + result = ::RegQueryValueEx(keyloc, L"InstallDir", NULL, &type, Should the "RegQueryValueEx" call here be changed to "RegQueryValueExW"? - if (ERROR_SUCCESS == ::RegQueryValueEx(keyloc, TEXT("Path"), NULL, &type, + if (ERROR_SUCCESS == ::RegQueryValueEx(keyloc, L"Path", NULL, &type, Also happens here. In nsPluginsDirWin.cpp there is a call to "VerQueryValue" - should this be "VerQueryValueW"? + if (kNotFound == idx) + return NS_ERROR_FILE_INVALID_PATH; Incorrect indentation here. 4-space should be 2-space.
Attachment #426055 - Attachment is obsolete: true
Attachment #427370 - Flags: review?(joshmoz)
Attachment #426055 - Flags: review?(joshmoz)
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Comment on attachment 427370 [details] [diff] [review] Use explicit W functions, make nsPluginInfo fields UTF8 always, rev. 1.1 - if (VerQueryValue(lpData, TEXT("\\"), &lpBuffer, &uLen) != 0) { + if (VerQueryValue(lpData, L"\\", &lpBuffer, &uLen) != 0) { -> VerQueryValueW r+, if you fix that on check-in I don't need to review this again
Attachment #427370 - Flags: review?(joshmoz) → review+
this broke building winmo with plugins enabled. Unfortunately this wasn't caught when it landed because our build bots aren't building with plugins enabled, we should fix that too.
Attachment #427875 - Flags: review?(joshmoz)
CE5: From http://msdn.microsoft.com/en-us/library/ms890963.aspx DWORD GetFileVersionInfoSize( LPTSTR lptstrFilename, LPDWORD lpdwHandle ); Windows 32: From http://msdn.microsoft.com/en-us/library/ms647005%28VS.85%29.aspx DWORD GetFileVersionInfoSize( LPCTSTR lptstrFilename, LPDWORD lpdwHandle );
Comment on attachment 427875 [details] [diff] [review] patch to fix winmo Add a comment above the #ifdef explaining this madness.
Attachment #427875 - Flags: review?(joshmoz) → review+
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Blanket approval for Lorentz merge to mozilla-1.9.2 a=beltzner for 1.9.2.4 - please make sure to mark status1.9.2:.4-fixed
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: