public class sun.font.FcFontConfiguration extends sun.awt.FontConfiguration
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.font.FcFontConfiguration
super_class: sun.awt.FontConfiguration
{
private static final java.lang.String fileVersion;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "1"
private java.lang.String fcInfoFileName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private sun.font.FontConfigManager$FcCompFont[] fcCompFonts;
descriptor: [Lsun/font/FontConfigManager$FcCompFont;
flags: (0x0002) ACC_PRIVATE
public void <init>(sun.font.SunFontManager);
descriptor: (Lsun/font/SunFontManager;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.awt.FontConfiguration.<init>:(Lsun/font/SunFontManager;)V
1: aload 0
aconst_null
putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
2: aload 0
aconst_null
putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
3: aload 0
invokevirtual sun.font.FcFontConfiguration.init:()Z
pop
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/font/FcFontConfiguration;
0 5 1 fm Lsun/font/SunFontManager;
MethodParameters:
Name Flags
fm
public void <init>(sun.font.SunFontManager, boolean, boolean);
descriptor: (Lsun/font/SunFontManager;ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
iload 3
invokespecial sun.awt.FontConfiguration.<init>:(Lsun/font/SunFontManager;ZZ)V
1: aload 0
aconst_null
putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
2: aload 0
aconst_null
putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
3: aload 0
invokevirtual sun.font.FcFontConfiguration.init:()Z
pop
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/font/FcFontConfiguration;
0 5 1 fm Lsun/font/SunFontManager;
0 5 2 preferLocaleFonts Z
0 5 3 preferPropFonts Z
MethodParameters:
Name Flags
fm
preferLocaleFonts
preferPropFonts
public synchronized boolean init();
descriptor: ()Z
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.font.FcFontConfiguration.setFontConfiguration:()V
3: aload 0
invokevirtual sun.font.FcFontConfiguration.readFcInfo:()V
4: aload 0
getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
checkcast sun.awt.FcFontManager
astore 1
start local 1 5: aload 1
invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
astore 2
start local 2 6: aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnonnull 18
7: aload 0
aload 2
invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
8: aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnull 15
9: aload 0
invokevirtual sun.font.FcFontConfiguration.writeFcInfo:()V
10: goto 19
StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager
StackMap stack: java.lang.Exception
11: astore 3
start local 3 12: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 19
13: new java.lang.StringBuilder
dup
ldc "Exception writing fcInfo "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
end local 3 14: goto 19
StackMap locals:
StackMap stack:
15: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 19
16: ldc "Failed to get info from libfontconfig"
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
17: goto 19
18: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
invokevirtual sun.font.FontConfigManager.populateFontConfig:([Lsun/font/FontConfigManager$FcCompFont;)V
19: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnonnull 21
20: iconst_0
ireturn
21: StackMap locals:
StackMap stack:
ldc "java.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 22: aload 3
ifnonnull 24
23: new java.lang.Error
dup
ldc "java.home property not set"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
24: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
getstatic java.io.File.separator:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "lib"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 25: aload 0
aload 4
invokevirtual sun.font.FcFontConfiguration.getInstalledFallbackFonts:(Ljava/lang/String;)V
26: iconst_1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/font/FcFontConfiguration;
5 27 1 fm Lsun/awt/FcFontManager;
6 27 2 fcm Lsun/font/FontConfigManager;
12 14 3 e Ljava/lang/Exception;
22 27 3 javaHome Ljava/lang/String;
25 27 4 javaLib Ljava/lang/String;
Exception table:
from to target type
9 10 11 Class java.lang.Exception
public java.lang.String getFallbackFamilyName(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual sun.font.FcFontConfiguration.getCompatibilityFamilyName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 3
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/font/FcFontConfiguration;
0 4 1 fontName Ljava/lang/String;
0 4 2 defaultFallback Ljava/lang/String;
1 4 3 compatibilityName Ljava/lang/String;
MethodParameters:
Name Flags
fontName
defaultFallback
protected java.lang.String getFaceNameFromComponentFontName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 componentFontName Ljava/lang/String;
MethodParameters:
Name Flags
componentFontName
protected java.lang.String getFileNameFromComponentFontName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 componentFontName Ljava/lang/String;
MethodParameters:
Name Flags
componentFontName
public java.lang.String getFileNameFromPlatformName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 platformName Ljava/lang/String;
MethodParameters:
Name Flags
platformName
protected java.nio.charset.Charset getDefaultFontCharset(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/nio/charset/Charset;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: ldc "ISO8859_1"
invokestatic java.nio.charset.Charset.forName:(Ljava/lang/String;)Ljava/nio/charset/Charset;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 fontName Ljava/lang/String;
MethodParameters:
Name Flags
fontName
protected java.lang.String getEncoding(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: ldc "default"
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 awtFontName Ljava/lang/String;
0 1 2 characterSubsetName Ljava/lang/String;
MethodParameters:
Name Flags
awtFontName
characterSubsetName
protected void initReorderMap();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield sun.font.FcFontConfiguration.reorderMap:Ljava/util/HashMap;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/font/FcFontConfiguration;
protected sun.awt.FontDescriptor[] buildFontDescriptors(int, int);
descriptor: (II)[Lsun/awt/FontDescriptor;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual sun.font.FcFontConfiguration.get2DCompositeFontInfo:()[Lsun/font/CompositeFontDescriptor;
astore 3
start local 3 1: iload 1
iconst_4
imul
iload 2
iadd
istore 4
start local 4 2: aload 3
iload 4
aaload
invokevirtual sun.font.CompositeFontDescriptor.getComponentFaceNames:()[Ljava/lang/String;
astore 5
start local 5 3: aload 5
arraylength
anewarray sun.awt.FontDescriptor
astore 6
start local 6 4: iconst_0
istore 7
start local 7 5: goto 8
6: StackMap locals: sun.font.FcFontConfiguration int int sun.font.CompositeFontDescriptor[] int java.lang.String[] sun.awt.FontDescriptor[] int
StackMap stack:
aload 6
iload 7
new sun.awt.FontDescriptor
dup
aload 5
iload 7
aaload
getstatic java.nio.charset.StandardCharsets.ISO_8859_1:Ljava/nio/charset/Charset;
invokevirtual java.nio.charset.Charset.newEncoder:()Ljava/nio/charset/CharsetEncoder;
iconst_0
newarray 10
invokespecial sun.awt.FontDescriptor.<init>:(Ljava/lang/String;Ljava/nio/charset/CharsetEncoder;[I)V
aastore
7: iinc 7 1
StackMap locals:
StackMap stack:
8: iload 7
aload 5
arraylength
if_icmplt 6
end local 7 9: aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/font/FcFontConfiguration;
0 10 1 fontIndex I
0 10 2 styleIndex I
1 10 3 cfi [Lsun/font/CompositeFontDescriptor;
2 10 4 idx I
3 10 5 componentFaceNames [Ljava/lang/String;
4 10 6 ret [Lsun/awt/FontDescriptor;
5 9 7 i I
MethodParameters:
Name Flags
fontIndex
styleIndex
public int getNumberCoreFonts();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
public java.lang.String[] getPlatformFontNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 0
getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
checkcast sun.awt.FcFontManager
astore 2
start local 2 2: aload 2
invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
astore 3
start local 3 3: aload 3
invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 12
6: StackMap locals: sun.font.FcFontConfiguration java.util.HashSet sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] int
StackMap stack:
iconst_0
istore 6
start local 6 7: goto 10
8: StackMap locals: int
StackMap stack:
aload 1
aload 4
iload 5
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 6
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
9: iinc 6 1
StackMap locals:
StackMap stack:
10: iload 6
aload 4
iload 5
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
arraylength
if_icmplt 8
end local 6 11: iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 4
arraylength
if_icmplt 6
end local 5 13: aload 1
iconst_0
anewarray java.lang.String
invokevirtual java.util.HashSet.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/font/FcFontConfiguration;
1 14 1 nameSet Ljava/util/HashSet<Ljava/lang/String;>;
2 14 2 fm Lsun/awt/FcFontManager;
3 14 3 fcm Lsun/font/FontConfigManager;
4 14 4 fcCompFonts [Lsun/font/FontConfigManager$FcCompFont;
5 13 5 i I
7 11 6 j I
public java.lang.String ();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
public boolean needToSearchForFile(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FcFontConfiguration;
0 1 1 fileName Ljava/lang/String;
MethodParameters:
Name Flags
fileName
private sun.font.FontConfigManager$FontConfigFont[] getFcFontList(sun.font.FontConfigManager$FcCompFont[], java.lang.String, int);
descriptor: ([Lsun/font/FontConfigManager$FcCompFont;Ljava/lang/String;I)[Lsun/font/FontConfigManager$FontConfigFont;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ldc "dialog"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: ldc "sansserif"
astore 2
2: goto 5
StackMap locals:
StackMap stack:
3: aload 2
ldc "dialoginput"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: ldc "monospaced"
astore 2
5: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 6: goto 11
7: StackMap locals: int
StackMap stack:
aload 2
aload 1
iload 4
aaload
getfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
8: iload 3
aload 1
iload 4
aaload
getfield sun.font.FontConfigManager$FcCompFont.style:I
if_icmpne 10
9: aload 1
iload 4
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
areturn
10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 1
arraylength
if_icmplt 7
end local 4 12: aload 1
iconst_0
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/font/FcFontConfiguration;
0 13 1 fcFonts [Lsun/font/FontConfigManager$FcCompFont;
0 13 2 fontname Ljava/lang/String;
0 13 3 style I
6 12 4 i I
MethodParameters:
Name Flags
fcFonts
fontname
style
public sun.font.CompositeFontDescriptor[] get2DCompositeFontInfo();
descriptor: ()[Lsun/font/CompositeFontDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=14, args_size=1
start local 0 0: aload 0
getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
checkcast sun.awt.FcFontManager
astore 1
start local 1 1: aload 1
invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
astore 2
start local 2 2: aload 2
invokevirtual sun.font.FontConfigManager.loadFontConfig:()[Lsun/font/FontConfigManager$FcCompFont;
astore 3
start local 3 3: bipush 20
anewarray sun.font.CompositeFontDescriptor
4: astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 43
7: StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] sun.font.CompositeFontDescriptor[] int
StackMap stack:
getstatic sun.font.FcFontConfiguration.publicFontNames:[Ljava/lang/String;
iload 5
aaload
astore 6
start local 6 8: iconst_0
istore 7
start local 7 9: goto 41
10: StackMap locals: java.lang.String int
StackMap stack:
new java.lang.StringBuilder
dup
aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic sun.font.FcFontConfiguration.styleNames:[Ljava/lang/String;
iload 7
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
start local 8 11: aload 0
aload 3
12: getstatic sun.font.FcFontConfiguration.fontNames:[Ljava/lang/String;
iload 5
aaload
iload 7
13: invokevirtual sun.font.FcFontConfiguration.getFcFontList:([Lsun/font/FontConfigManager$FcCompFont;Ljava/lang/String;I)[Lsun/font/FontConfigManager$FontConfigFont;
14: astore 9
start local 9 15: aload 9
arraylength
istore 10
start local 10 16: getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
ifnull 18
17: iload 10
getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
arraylength
iadd
istore 10
18: StackMap locals: java.lang.String sun.font.FontConfigManager$FontConfigFont[] int
StackMap stack:
iload 10
anewarray java.lang.String
astore 11
start local 11 19: iload 10
anewarray java.lang.String
astore 12
start local 12 20: iconst_0
istore 13
start local 13 21: goto 25
22: StackMap locals: java.lang.String[] java.lang.String[] int
StackMap stack:
aload 11
iload 13
aload 9
iload 13
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
aastore
23: aload 12
iload 13
aload 9
iload 13
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
aastore
24: iinc 13 1
StackMap locals:
StackMap stack:
25: iload 13
aload 9
arraylength
if_icmplt 22
26: getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
ifnull 31
27: getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
iconst_0
28: aload 11
aload 9
arraylength
29: getstatic sun.font.FcFontConfiguration.installedFallbackFontFiles:[Ljava/lang/String;
arraylength
30: invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
31: StackMap locals:
StackMap stack:
aload 4
iload 5
iconst_4
imul
iload 7
iadd
32: new sun.font.CompositeFontDescriptor
dup
33: aload 8
34: iconst_1
35: aload 12
36: aload 11
37: aconst_null
aconst_null
38: invokespecial sun.font.CompositeFontDescriptor.<init>:(Ljava/lang/String;I[Ljava/lang/String;[Ljava/lang/String;[I[I)V
39: aastore
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 40: iinc 7 1
StackMap locals: sun.font.FcFontConfiguration sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont[] sun.font.CompositeFontDescriptor[] int java.lang.String int
StackMap stack:
41: iload 7
iconst_4
if_icmplt 10
end local 7 end local 6 42: iinc 5 1
StackMap locals:
StackMap stack:
43: iload 5
iconst_5
if_icmplt 7
end local 5 44: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 45 0 this Lsun/font/FcFontConfiguration;
1 45 1 fm Lsun/awt/FcFontManager;
2 45 2 fcm Lsun/font/FontConfigManager;
3 45 3 fcCompFonts [Lsun/font/FontConfigManager$FcCompFont;
5 45 4 result [Lsun/font/CompositeFontDescriptor;
6 44 5 fontIndex I
8 42 6 fontName Ljava/lang/String;
9 42 7 styleIndex I
11 40 8 faceName Ljava/lang/String;
15 40 9 fcFonts [Lsun/font/FontConfigManager$FontConfigFont;
16 40 10 numFonts I
19 40 11 fileNames [Ljava/lang/String;
20 40 12 faceNames [Ljava/lang/String;
21 40 13 index I
private java.lang.String getVersionString(java.io.File);
descriptor: (Ljava/io/File;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: new java.util.Scanner
dup
aload 1
invokespecial java.util.Scanner.<init>:(Ljava/io/File;)V
astore 4
start local 4 2: aload 4
ldc "(\\d)+((\\.)(\\d)+)*"
invokevirtual java.util.Scanner.findInLine:(Ljava/lang/String;)Ljava/lang/String;
3: aload 4
ifnull 4
aload 4
invokevirtual java.util.Scanner.close:()V
4: StackMap locals: sun.font.FcFontConfiguration java.io.File java.lang.Throwable java.lang.Throwable java.util.Scanner
StackMap stack: java.lang.String
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 2
6: aload 4
ifnull 7
aload 4
invokevirtual java.util.Scanner.close:()V
end local 4 StackMap locals:
StackMap stack:
7: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 3
aload 2
ifnonnull 9
aload 3
astore 2
goto 10
StackMap locals:
StackMap stack:
9: aload 2
aload 3
if_acmpeq 10
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
10: aload 2
athrow
StackMap locals: sun.font.FcFontConfiguration java.io.File
StackMap stack: java.lang.Exception
11: pop
12: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/font/FcFontConfiguration;
0 13 1 f Ljava/io/File;
2 7 4 sc Ljava/util/Scanner;
Exception table:
from to target type
2 3 5 any
1 4 8 any
5 8 8 any
0 4 11 Class java.lang.Exception
5 11 11 Class java.lang.Exception
MethodParameters:
Name Flags
f
protected void setOsNameAndVersion();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokespecial sun.awt.FontConfiguration.setOsNameAndVersion:()V
1: getstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
ldc "Linux"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 3
2: return
3: StackMap locals:
StackMap stack:
new java.io.File
dup
ldc "/etc/lsb-release"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
dup
astore 1
start local 1 4: invokevirtual java.io.File.canRead:()Z
ifeq 10
5: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 2
start local 2 6: aload 2
new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
7: aload 2
ldc "DISTRIB_ID"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
8: aload 2
ldc "DISTRIB_RELEASE"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
end local 2 9: goto 29
StackMap locals: java.io.File
StackMap stack:
10: new java.io.File
dup
ldc "/etc/redhat-release"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
dup
astore 1
invokevirtual java.io.File.canRead:()Z
ifeq 14
11: ldc "RedHat"
putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
12: aload 0
aload 1
invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
13: goto 29
StackMap locals:
StackMap stack:
14: new java.io.File
dup
ldc "/etc/SuSE-release"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
dup
astore 1
invokevirtual java.io.File.canRead:()Z
ifeq 18
15: ldc "SuSE"
putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
16: aload 0
aload 1
invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
17: goto 29
StackMap locals:
StackMap stack:
18: new java.io.File
dup
ldc "/etc/turbolinux-release"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
dup
astore 1
invokevirtual java.io.File.canRead:()Z
ifeq 22
19: ldc "Turbo"
putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
20: aload 0
aload 1
invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
21: goto 29
StackMap locals:
StackMap stack:
22: new java.io.File
dup
ldc "/etc/fedora-release"
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
dup
astore 1
invokevirtual java.io.File.canRead:()Z
ifeq 29
23: ldc "Fedora"
putstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
24: aload 0
aload 1
invokevirtual sun.font.FcFontConfiguration.getVersionString:(Ljava/io/File;)Ljava/lang/String;
putstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
end local 1 25: goto 29
StackMap locals: sun.font.FcFontConfiguration
StackMap stack: java.lang.Exception
26: pop
27: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 29
28: ldc "Exception identifying Linux distro."
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
29: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lsun/font/FcFontConfiguration;
4 25 1 f Ljava/io/File;
6 9 2 props Ljava/util/Properties;
Exception table:
from to target type
3 25 26 Class java.lang.Exception
private java.io.File getFcInfoFile();
descriptor: ()Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=1
start local 0 0: aload 0
getfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
ifnonnull 16
1: invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
astore 1
start local 1 2: goto 5
end local 1 StackMap locals:
StackMap stack: java.net.UnknownHostException
3: pop
4: ldc "localhost"
astore 1
start local 1 5: StackMap locals: java.lang.String
StackMap stack:
ldc "user.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 6: ldc "java.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 7: getstatic java.io.File.separator:Ljava/lang/String;
astore 4
start local 4 8: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".java"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "fonts"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 9: invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
astore 6
start local 6 10: aload 6
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 7
start local 7 11: aload 6
invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
astore 8
start local 8 12: new java.lang.StringBuilder
dup
ldc "fcinfo-1-"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: getstatic sun.font.FcFontConfiguration.osName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
getstatic sun.font.FcFontConfiguration.osVersion:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".properties"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 15: aload 0
new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 16: StackMap locals:
StackMap stack:
new java.io.File
dup
aload 0
getfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/font/FcFontConfiguration;
2 3 1 hostname Ljava/lang/String;
5 16 1 hostname Ljava/lang/String;
6 16 2 userDir Ljava/lang/String;
7 16 3 version Ljava/lang/String;
8 16 4 fs Ljava/lang/String;
9 16 5 dir Ljava/lang/String;
10 16 6 locale Ljava/util/Locale;
11 16 7 lang Ljava/lang/String;
12 16 8 country Ljava/lang/String;
15 16 9 name Ljava/lang/String;
Exception table:
from to target type
1 2 3 Class java.net.UnknownHostException
private void writeFcInfo();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=1
start local 0 0: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 1
start local 1 1: aload 1
ldc "version"
ldc "1"
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
2: aload 0
getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
checkcast sun.awt.FcFontManager
astore 2
start local 2 3: aload 2
invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
astore 3
start local 3 4: aload 3
invokevirtual sun.font.FontConfigManager.getFontConfigInfo:()Lsun/font/FontConfigManager$FontConfigInfo;
astore 4
start local 4 5: aload 1
ldc "fcversion"
aload 4
getfield sun.font.FontConfigManager$FontConfigInfo.fcVersion:I
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
6: aload 4
getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
ifnull 13
7: iconst_0
istore 5
start local 5 8: goto 12
9: StackMap locals: sun.font.FcFontConfiguration java.util.Properties sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FontConfigInfo int
StackMap stack:
aload 4
getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
iload 5
aaload
ifnull 11
10: aload 1
new java.lang.StringBuilder
dup
ldc "cachedir."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
iload 5
aaload
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 4
getfield sun.font.FontConfigManager$FontConfigInfo.cacheDirs:[Ljava/lang/String;
arraylength
if_icmplt 9
end local 5 13: StackMap locals:
StackMap stack:
iconst_0
istore 5
start local 5 14: goto 32
15: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 5
aaload
astore 6
start local 6 16: new java.lang.StringBuilder
dup
aload 6
getfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
getfield sun.font.FontConfigManager$FcCompFont.style:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 17: aload 1
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".length"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
arraylength
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
19: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
20: iconst_0
istore 8
start local 8 21: goto 30
22: StackMap locals: sun.font.FontConfigManager$FcCompFont java.lang.String int
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ".file"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
23: aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 8
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
24: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
25: aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 8
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
ifnull 29
26: aload 1
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 8
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ".fullName"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 8
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
28: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
29: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
30: iload 8
aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
arraylength
if_icmplt 22
end local 8 end local 7 end local 6 31: iinc 5 1
StackMap locals:
StackMap stack:
32: iload 5
aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
arraylength
if_icmplt 15
end local 5 33: aload 0
invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
astore 5
start local 5 34: aload 5
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 6
start local 6 35: aload 6
invokevirtual java.io.File.mkdirs:()Z
pop
36: aload 6
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
ldc "fcinfo"
aconst_null
iconst_0
anewarray java.nio.file.attribute.FileAttribute
invokestatic java.nio.file.Files.createTempFile:(Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
astore 7
start local 7 37: new java.io.FileOutputStream
dup
aload 7
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 8
start local 8 38: aload 1
aload 8
39: ldc "JDK Font Configuration Generated File: *Do Not Edit*"
40: invokevirtual java.util.Properties.store:(Ljava/io/OutputStream;Ljava/lang/String;)V
41: aload 8
invokevirtual java.io.FileOutputStream.close:()V
42: aload 7
aload 5
invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
istore 9
start local 9 43: iload 9
ifne 50
invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 50
44: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "rename failed"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
45: new java.lang.StringBuilder
dup
ldc "Failed renaming file to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
end local 9 end local 8 end local 7 end local 6 end local 5 46: goto 50
StackMap locals: sun.font.FcFontConfiguration java.util.Properties sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FontConfigInfo
StackMap stack: java.lang.Exception
47: pop
48: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 50
49: new java.lang.StringBuilder
dup
ldc "IOException writing to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
50: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Lsun/font/FcFontConfiguration;
1 51 1 props Ljava/util/Properties;
3 51 2 fm Lsun/awt/FcFontManager;
4 51 3 fcm Lsun/font/FontConfigManager;
5 51 4 fcInfo Lsun/font/FontConfigManager$FontConfigInfo;
8 13 5 i I
14 33 5 i I
16 31 6 fci Lsun/font/FontConfigManager$FcCompFont;
17 31 7 styleKey Ljava/lang/String;
21 31 8 j I
34 46 5 fcInfoFile Ljava/io/File;
35 46 6 dir Ljava/io/File;
37 46 7 tempFile Ljava/io/File;
38 46 8 fos Ljava/io/FileOutputStream;
43 46 9 renamed Z
Exception table:
from to target type
33 46 47 Class java.lang.Exception
private void readFcInfo();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=23, args_size=1
start local 0 0: aload 0
invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
astore 1
start local 1 1: aload 1
invokevirtual java.io.File.exists:()Z
ifne 5
2: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 4
3: new java.lang.StringBuilder
dup
ldc "fontconfig info file "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.io.File.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " does not exist"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
4: StackMap locals: java.io.File
StackMap stack:
return
5: StackMap locals:
StackMap stack:
new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 2
start local 2 6: aconst_null
astore 3
aconst_null
astore 4
7: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 5
start local 5 8: aload 2
aload 5
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
9: aload 5
ifnull 19
aload 5
invokevirtual java.io.FileInputStream.close:()V
goto 19
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.Throwable java.lang.Throwable java.io.FileInputStream
StackMap stack: java.lang.Throwable
10: astore 3
aload 5
ifnull 11
aload 5
invokevirtual java.io.FileInputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
11: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 4
aload 3
ifnonnull 13
aload 4
astore 3
goto 14
StackMap locals:
StackMap stack:
13: aload 3
aload 4
if_acmpeq 14
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 3
athrow
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties
StackMap stack: java.io.IOException
15: astore 3
start local 3 16: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 18
17: new java.lang.StringBuilder
dup
ldc "IOException ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.io.IOException.getCause:()Ljava/lang/Throwable;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ") reading from "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.io.File.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
18: StackMap locals: java.io.IOException
StackMap stack:
return
end local 3 19: StackMap locals:
StackMap stack:
aload 2
ldc "version"
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 20: aload 3
ifnull 21
aload 3
ldc "1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 26
21: StackMap locals: java.lang.String
StackMap stack:
invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 25
22: new java.lang.StringBuilder
dup
ldc "fontconfig info file version mismatch (found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: ldc ", expected: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "1"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
return
26: StackMap locals:
StackMap stack:
aload 2
ldc "fcversion"
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 27: aload 4
ifnull 38
28: aload 4
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 5
start local 5 29: iload 5
ifeq 38
30: iload 5
invokestatic sun.font.FontConfigManager.getFontConfigVersion:()I
if_icmpeq 38
31: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 33
32: ldc "new, different fontconfig detected"
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
33: StackMap locals: java.lang.String int
StackMap stack:
return
end local 5 34: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String
StackMap stack: java.lang.Exception
pop
35: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 37
36: new java.lang.StringBuilder
dup
ldc "Exception parsing version "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
37: StackMap locals:
StackMap stack:
return
38: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.File.lastModified:()J
lstore 5
start local 5 39: iconst_0
istore 7
start local 7 40: goto 50
41: StackMap locals: long int
StackMap stack:
aload 2
new java.lang.StringBuilder
dup
ldc "cachedir."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 8
start local 8 42: aload 8
ifnonnull 44
43: goto 51
44: StackMap locals: java.lang.String
StackMap stack:
new java.io.File
dup
aload 8
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 9
start local 9 45: aload 9
invokevirtual java.io.File.exists:()Z
ifeq 49
aload 9
invokevirtual java.io.File.lastModified:()J
lload 5
lcmp
ifle 49
46: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 48
47: ldc "out of date cache directories detected"
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
48: StackMap locals: java.io.File
StackMap stack:
return
49: StackMap locals:
StackMap stack:
iinc 7 1
end local 9 end local 8 50: StackMap locals:
StackMap stack:
iload 7
iconst_4
if_icmplt 41
51: StackMap locals:
StackMap stack:
iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "sansserif"
aastore
dup
iconst_1
ldc "serif"
aastore
dup
iconst_2
ldc "monospaced"
aastore
astore 8
start local 8 52: iconst_3
anewarray java.lang.String
dup
iconst_0
ldc "sans"
aastore
dup
iconst_1
ldc "serif"
aastore
dup
iconst_2
ldc "monospace"
aastore
astore 9
start local 9 53: aload 8
arraylength
istore 10
start local 10 54: iconst_4
istore 11
start local 11 55: iload 10
iload 11
imul
anewarray sun.font.FontConfigManager$FcCompFont
astore 12
start local 12 56: iconst_0
istore 13
start local 13 57: goto 92
58: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int
StackMap stack:
iconst_0
istore 14
start local 14 59: goto 90
60: StackMap locals: int
StackMap stack:
iload 13
iload 11
imul
iload 14
iadd
istore 15
start local 15 61: aload 12
iload 15
new sun.font.FontConfigManager$FcCompFont
dup
invokespecial sun.font.FontConfigManager$FcCompFont.<init>:()V
aastore
62: new java.lang.StringBuilder
dup
aload 8
iload 13
aaload
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 14
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 16
start local 16 63: aload 12
iload 15
aaload
aload 8
iload 13
aaload
putfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
64: aload 12
iload 15
aaload
aload 9
iload 13
aaload
putfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
65: aload 12
iload 15
aaload
iload 14
putfield sun.font.FontConfigManager$FcCompFont.style:I
66: aload 2
new java.lang.StringBuilder
dup
aload 16
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".length"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 17
start local 17 67: aload 17
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 18
start local 18 68: iload 18
ifgt 72
69: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 71
70: new java.lang.StringBuilder
dup
ldc "bad non-positive .length entry in fontconfig file "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.io.File.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
71: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int int int java.lang.String java.lang.String int
StackMap stack:
return
72: StackMap locals:
StackMap stack:
aload 12
iload 15
aaload
iload 18
anewarray sun.font.FontConfigManager$FontConfigFont
putfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
73: iconst_0
istore 19
start local 19 74: goto 87
75: StackMap locals: int
StackMap stack:
aload 12
iload 15
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 19
new sun.font.FontConfigManager$FontConfigFont
dup
invokespecial sun.font.FontConfigManager$FontConfigFont.<init>:()V
aastore
76: new java.lang.StringBuilder
dup
aload 16
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 19
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ".fullName"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 20
start local 20 77: aload 2
aload 20
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 21
start local 21 78: aload 12
iload 15
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 19
aaload
aload 21
putfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
79: new java.lang.StringBuilder
dup
aload 16
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 19
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ".file"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 20
80: aload 2
aload 20
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 22
start local 22 81: aload 22
ifnonnull 85
82: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 84
83: new java.lang.StringBuilder
dup
ldc "missing file value for key "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 20
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " in fontconfig file "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.io.File.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
84: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
return
85: StackMap locals:
StackMap stack:
aload 12
iload 15
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 19
aaload
aload 22
putfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
end local 22 end local 21 end local 20 86: iinc 19 1
StackMap locals:
StackMap stack:
87: iload 19
iload 18
if_icmplt 75
end local 19 88: aload 12
iload 15
aaload
aload 12
iload 15
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iconst_0
aaload
putfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
end local 18 end local 17 end local 16 end local 15 89: iinc 14 1
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int int
StackMap stack:
90: iload 14
iload 11
if_icmplt 60
end local 14 91: iinc 13 1
StackMap locals:
StackMap stack:
92: iload 13
iload 10
if_icmplt 58
end local 13 93: aload 0
aload 12
putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
94: goto 98
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[]
StackMap stack: java.lang.Throwable
95: astore 13
start local 13 96: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 98
97: aload 13
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
end local 13 98: StackMap locals:
StackMap stack:
invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 100
99: new java.lang.StringBuilder
dup
ldc "successfully parsed the fontconfig file at "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.io.File.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.font.FontUtilities.logInfo:(Ljava/lang/String;)V
100: StackMap locals:
StackMap stack:
return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 101 0 this Lsun/font/FcFontConfiguration;
1 101 1 fcFile Ljava/io/File;
6 101 2 props Ljava/util/Properties;
8 11 5 fis Ljava/io/FileInputStream;
16 19 3 e Ljava/io/IOException;
20 101 3 version Ljava/lang/String;
27 101 4 fcVersionStr Ljava/lang/String;
29 34 5 fcVersion I
39 101 5 lastModified J
40 101 7 cacheDirIndex I
42 50 8 dir Ljava/lang/String;
45 50 9 dirFile Ljava/io/File;
52 101 8 names [Ljava/lang/String;
53 101 9 fcnames [Ljava/lang/String;
54 101 10 namesLen I
55 101 11 numStyles I
56 101 12 fci [Lsun/font/FontConfigManager$FcCompFont;
57 93 13 i I
59 91 14 s I
61 89 15 index I
63 89 16 key Ljava/lang/String;
67 89 17 lenStr Ljava/lang/String;
68 89 18 nfonts I
74 88 19 f I
77 86 20 fkey Ljava/lang/String;
78 86 21 fullName Ljava/lang/String;
81 86 22 file Ljava/lang/String;
96 98 13 t Ljava/lang/Throwable;
Exception table:
from to target type
8 9 10 any
7 12 12 any
6 15 15 Class java.io.IOException
28 33 34 Class java.lang.Exception
56 71 95 Class java.lang.Throwable
72 84 95 Class java.lang.Throwable
85 94 95 Class java.lang.Throwable
private static void warning(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: ldc "sun.awt.FontConfiguration"
invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
astore 1
start local 1 1: aload 1
aload 0
invokevirtual sun.util.logging.PlatformLogger.warning:(Ljava/lang/String;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 msg Ljava/lang/String;
1 3 1 logger Lsun/util/logging/PlatformLogger;
MethodParameters:
Name Flags
msg
}
SourceFile: "FcFontConfiguration.java"
InnerClasses:
public FcCompFont = sun.font.FontConfigManager$FcCompFont of sun.font.FontConfigManager
public FontConfigFont = sun.font.FontConfigManager$FontConfigFont of sun.font.FontConfigManager
public FontConfigInfo = sun.font.FontConfigManager$FontConfigInfo of sun.font.FontConfigManager