Skip to content

Commit 278fdc8

Browse files
committed
Add "ppc64le" to ArchUtils.
- See https://bugs.gentoo.org/972590 Bug 972590 - dev-java/commons-lang-3.20.0: java.lang.NullPointerException: Cannot invoke "org.apache.commons.lang3.arch.Processor.toString()" because "<local1>" is null - Like #1624 but with tests
1 parent 102fcb0 commit 278fdc8

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

src/main/java/org/apache/commons/lang3/ArchUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ private static void init_PPC_32Bit() {
117117
}
118118

119119
private static void init_PPC_64Bit() {
120-
addProcessors(new Processor(Processor.Arch.BIT_64, Processor.Type.PPC), "ppc64", "power64", "powerpc64", "power_pc64", "power_rs64");
120+
addProcessors(new Processor(Processor.Arch.BIT_64, Processor.Type.PPC), "ppc64", "ppc64le", "power64", "powerpc64", "power_pc64", "power_rs64");
121121
}
122122

123123
private static void init_RISCV_32Bit() {

src/test/java/org/apache/commons/lang3/ArchUtilsTest.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ class ArchUtilsTest extends AbstractLangTest {
3737
private static final String IA64_32 = "ia64_32";
3838
private static final String PPC = "ppc";
3939
private static final String PPC64 = "ppc64";
40+
private static final String PPC64_LE = "ppc64le";
4041
private static final String X86 = "x86";
4142
private static final String X86_64 = "x86_64";
4243
private static final String AARCH_64 = "aarch64";
@@ -99,6 +100,10 @@ void testArch() {
99100
processor = ArchUtils.getProcessor(PPC64);
100101
assertEqualsTypeNotNull(Processor.Type.PPC, processor);
101102
assertTrue(processor.isPPC());
103+
// PPC64_LE
104+
processor = ArchUtils.getProcessor(PPC64_LE);
105+
assertEqualsTypeNotNull(Processor.Type.PPC, processor);
106+
assertTrue(processor.isPPC());
102107
// AARCH_64
103108
processor = ArchUtils.getProcessor(AARCH_64);
104109
assertEqualsTypeNotNull(Processor.Type.AARCH_64, processor);
@@ -157,6 +162,10 @@ void testIs32BitJVM() {
157162
processor = ArchUtils.getProcessor(PPC64);
158163
assertNotEqualsArchNotNull(Processor.Arch.BIT_32, processor);
159164
assertFalse(processor.is32Bit());
165+
// PPC64_LE
166+
processor = ArchUtils.getProcessor(PPC64_LE);
167+
assertNotEqualsArchNotNull(Processor.Arch.BIT_32, processor);
168+
assertFalse(processor.is32Bit());
160169
// IA64
161170
processor = ArchUtils.getProcessor(IA64);
162171
assertNotEqualsArchNotNull(Processor.Arch.BIT_32, processor);
@@ -177,6 +186,10 @@ void testIs64BitJVM() {
177186
processor = ArchUtils.getProcessor(PPC64);
178187
assertEqualsArchNotNull(Processor.Arch.BIT_64, processor);
179188
assertTrue(processor.is64Bit());
189+
// PPC64_LE
190+
processor = ArchUtils.getProcessor(PPC64_LE);
191+
assertEqualsArchNotNull(Processor.Arch.BIT_64, processor);
192+
assertTrue(processor.is64Bit());
180193
// IA64
181194
processor = ArchUtils.getProcessor(IA64);
182195
assertEqualsArchNotNull(Processor.Arch.BIT_64, processor);

0 commit comments

Comments
 (0)