Apache Cordova
  1. Apache Cordova
  2. CB-141

Syntax Error raised in phonegap-1.3.0.js in FR-FR locale when watching the accelerometer

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.0
    • Fix Version/s: 2.0.0
    • Component/s: WP7
    • Labels:
    • Environment:

      All phone configured to use the FR-FR locale (the emulator included)

      Description

      There is a bug in the Accelerometer.cs file of the WP7GalClassLib library in the way to formats the current coordinates into JSON format.

      Here is the kind of output produced on a FR-FR locale (and on any locale using the coma character as the separated character for numerics) :

      "

      {\"x\":0,00472,\"y\":-0,19879,\"z\":-0,98115}

      " instead of "

      {\"x\":0.00472,\"y\":-0.19879,\"z\":-0.98115}

      " for EN-US.

      The JSON.Parse() instruction then raises a Syntax Error exception later on due to the bad formatting of the JSON string.

      To fix the bug, the code of the GetCurrentAccelerationFormatted() method needs to be changed by this one:

      private string GetCurrentAccelerationFormatted()
      {
      string resultCoordinates = String.Format("\"x\":

      {0}

      ,\"y\":

      {1}

      ,\"z\":

      {2}

      ",
      accelerometer.CurrentValue.Acceleration.X.ToString("0.00000", CultureInfo.InvariantCulture),
      accelerometer.CurrentValue.Acceleration.Y.ToString("0.00000", CultureInfo.InvariantCulture),
      accelerometer.CurrentValue.Acceleration.Z.ToString("0.00000", CultureInfo.InvariantCulture));
      resultCoordinates = "

      {" + resultCoordinates + "}

      ";
      return resultCoordinates;
      }

      It adds the usage of CultueInfo.InvariantCulture available in the System.Globalization namespace to always have the same formatting whatever the locale is.

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Jesse MacFadyen
            Reporter:
            David Rousset
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development