Re: Issues with chrome.manifest when installed in path having japanese characters

Benjamin Smedberg <[email protected]> Thu, 14 Aug 2014 09:19:31 -0400
Newsgroups gmane.comp.mozilla.devel.embedding
Message-ID <[email protected]>
On 8/14/2014 9:08 AM, [email protected] wrote:
> In our code , we are having following snippet :
>
> rv = NS_NewNativeLocalFile(nsEmbedCString((char *)filepath), PR_FALSE, getter_AddRefs(libxul));
> 	if (NS_FAILED(rv))
> 	{
> 		throw BALBrowserException();
> 	}
>
>
> 	rv = NS_NewNativeLocalFile( nsEmbedCString((char *)filepath), PR_FALSE, getter_AddRefs(appDir));
> 	if(NS_FAILED(rv))
> 	{
> 		throw BALBrowserException();
> 	}
> 	rv = XRE_InitEmbedding(libxul, appDir, 0);
>
> rv in each case is NS_OK . After execution of 'XRE_InitEmbedding(libxul, appDir, 0); '  we are getting the chrome.manifest error. I have checked filepath ( containing japanese characters) , it is correct.

What character set is filepath, and what charset is the native 
filesystem? Note that using narrow char* to store these is inherently 
lossy, and you should probably be using char16_t*/WCHAR* for these so 
that you don't run into issues with unicode repertoire: then you'd be 
using NS_NewLocalFile not NS_NewNativeLocalFile.

--BDS