Group :: System/Libraries
RPM: jnr-ffi
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Patch: 0001-Convert-int-to-boolean-like-C-does-nonzero-is-true.patch
Download
Download
From 759d6bddb616278a13713376c4ed82422e655892 Mon Sep 17 00:00:00 2001
From: Charles Oliver Nutter <headius@headius.com>
Date: Tue, 21 Apr 2020 16:19:37 -0500
Subject: [PATCH] Convert int to boolean like C does (nonzero is true)
Fixes #200
---
src/main/java/jnr/ffi/provider/jffi/NumberUtil.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/main/java/jnr/ffi/provider/jffi/NumberUtil.java b/src/main/java/jnr/ffi/provider/jffi/NumberUtil.java
index 3ca02c5..89bdb8f 100644
--- a/src/main/java/jnr/ffi/provider/jffi/NumberUtil.java
+++ b/src/main/java/jnr/ffi/provider/jffi/NumberUtil.java
@@ -158,9 +158,10 @@ public final class NumberUtil {
mv.i2c();
} else if (boolean.class == to) {
- // Ensure only 0x0 and 0x1 values are used for boolean
- mv.iconst_1();
- mv.iand();
+ // allow all non-zero values to be treated as true
+ mv.i2l();
+ mv.lconst_0();
+ mv.lcmp();
}
}
}
--
2.26.2