phonegap / build

This is the public repository for PhoneGap Build source and bug tracking
92 stars 33 forks source link

Non utf characters being sent via PhoneGap Build API #282

Open gwhenne opened 10 years ago

gwhenne commented 10 years ago

Here is what PhoneGap Build is sending:

      {
         "status":{
            "android":"error",
            "blackberry":"skip",
            "webos":"skip",
            "ios":null,
            "symbian":"skip",
            "winphone":"error"
         },
         "role":"admin",
         "link":"/api/v1/apps/813165",
         "description":"",
         "build_count":null,
         "title":"Project1",
         "phonegap_version":"3.1.0",
         "debug":false,
         "hydrates":false,
         "package":"com.nsbasic.Project1",
         "error":{
            "winphone":"invalid resource name found: www\\Documents\\Entreprise\\Production\\Application\\Fond parchemin\\Page d'accueil qu+¬te.png",
            "android":"Invalid filename: Documents/Entreprise/Production/Application/Fond parchemin/Page d'accueil qu+?te.png"
         },
         "private":true,
         "version":"1.0.1",
         "download":{

         },
         "icon":{
            "link":"/api/v1/apps/813165/icon",
            "filename":null
         },
         "id":813165,
         "repo":null
      }

Notice the first winphone error. There is a non-utf-8 character in the string. This is unacceptable, especially since the headers specify:

Content-Type: application/json; charset=utf-8
davejohnson commented 10 years ago

That's a valid UTF-8 character.

artlogic commented 10 years ago

I'm afraid not. Unfortunately the project has been deleted, but the byte was 0xac. This is NEVER a valid starting byte for a UTF-8 multi-byte character. The affected line was here:

"android":"Invalid filename: Documents/Entreprise/Production/Application/Fond parchemin/Page d'accueil qu+?te.png"

The question mark was the 0xac byte.

davejohnson commented 10 years ago

Ah the character in the winphone error is a valid character but that one might not have been.

gwhenne commented 10 years ago

This continues to cause us problems. Anything we can do to help?

gwhenne commented 9 years ago

We're shut down again as a result of this bug. Anything we can do to help resolve this issue?

goya commented 9 years ago

whats the app # for this?

gwhenne commented 9 years ago

Don't know. We get this when we try to download all the build #s for the account. Email me directly and I'll give you the account name.

Sent from a mobile device. Please excuse brevity and typos!

On May 28, 2014, at 7:45 PM, Brett Rudd notifications@github.com wrote:

whats the app # for this?

— Reply to this email directly or view it on GitHub.

artlogic commented 9 years ago

I can track down the app number. I'm away from my desk, so it'll be about 30 minutes. On May 28, 2014 7:56 PM, "George Henne" notifications@github.com wrote:

Don't know. We get this when we try to download all the build #s for the account. Email me directly and I'll give you the account name.

Sent from a mobile device. Please excuse brevity and typos!

On May 28, 2014, at 7:45 PM, Brett Rudd notifications@github.com wrote:

whats the app # for this?

— Reply to this email directly or view it on GitHub.

— Reply to this email directly or view it on GitHubhttps://github.com/phonegap/build/issues/282#issuecomment-44479659 .

artlogic commented 9 years ago

Here are some app numbers that appear to have problems:

938094 939529

The problem seems to be the error being reported from winphone.

artlogic commented 9 years ago

The invalid byte sequence can be seen here:

2c22 7769 6e70 686f 6e65 223a 2269 6e76  ,"winphone":"inv
000086c0: 616c 6964 2072 6573 6f75 7263 6520 6e61  alid resource na
000086d0: 6d65 2066 6f75 6e64 3a20 7777 775c 5ccf  me found: www\\.
000086e0: ba2b e4cf accf bbcf a62b e8cf bf20 cfba  .+.......+... ..
000086f0: 2be4 cfa6 cfba cfbf cfa6 20cf a6cf a6cf  +......... .....
00008700: a65c 5c67 616c 6c65 7279 4963 6f6e 2e70  .\\galleryIcon.p

Notice after www\\ we've got cfba, which is valid UTF-8, following that, we've got 2b which is seen as a + symbol, next we have e4cfac. This is where the problem is. While e4 is valid here, cf is not.