Skip to content

Commit 6eef901

Browse files
author
Mihail Slavchev
committed
bug fix for issue #148
1 parent cf44fef commit 6eef901

File tree

2 files changed

+17
-5
lines changed

2 files changed

+17
-5
lines changed

src/jni/FieldAccessor.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,7 @@ void FieldAccessor::SetJavaField(const Handle<Object>& target, const Handle<Valu
371371
}
372372
case 'J': //long
373373
{
374-
jlong longValue = (jlong) ArgConverter::ConvertToJavaLong(value);
374+
jlong longValue = static_cast<jlong>(ArgConverter::ConvertToJavaLong(value));
375375
if (isStatic)
376376
{
377377
env.SetStaticLongField(clazz, fieldId, longValue);
@@ -386,23 +386,23 @@ void FieldAccessor::SetJavaField(const Handle<Object>& target, const Handle<Valu
386386
{
387387
if (isStatic)
388388
{
389-
env.SetStaticFloatField(clazz, fieldId, (jfloat) value->NumberValue());
389+
env.SetStaticFloatField(clazz, fieldId, static_cast<jfloat>(value->NumberValue()));
390390
}
391391
else
392392
{
393-
env.SetLongField(targetJavaObject, fieldId, (jfloat) value->NumberValue());
393+
env.SetFloatField(targetJavaObject, fieldId, static_cast<jfloat>(value->NumberValue()));
394394
}
395395
break;
396396
}
397397
case 'D': //double
398398
{
399399
if (isStatic)
400400
{
401-
env.SetStaticFloatField(clazz, fieldId, value->NumberValue());
401+
env.SetStaticDoubleField(clazz, fieldId, value->NumberValue());
402402
}
403403
else
404404
{
405-
env.SetLongField(targetJavaObject, fieldId, value->NumberValue());
405+
env.SetDoubleField(targetJavaObject, fieldId, value->NumberValue());
406406
}
407407
break;
408408
}

test-app/assets/app/tests/tests.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -905,6 +905,18 @@ describe("Tests ", function () {
905905
expect(name).toEqual("dummy");
906906
});
907907

908+
it("TestSetFloatInstanceField", function () {
909+
910+
__log("TEST: TestSetFloatInstanceField");
911+
912+
var lParams = new android.widget.LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams.MATCH_PARENT, android.widget.LinearLayout.LayoutParams.MATCH_PARENT);
913+
lParams.weight = 1;
914+
915+
var value = lParams.weight;
916+
917+
expect(value).toEqual(1);
918+
});
919+
908920
it("TestCallMethodOnAnObjectPassedAsParameterInOverriddenMethodAsAnObjectWithoutMetadata", function () {
909921

910922
__log("TEST: TestCallMethodOnAnObjectPassedAsParameterInOverriddenMethodAsAnObjectWithoutMetadata");

0 commit comments

Comments
 (0)