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.familyName: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=3, args_size=2
start local 0 start local 1 0: new java.util.Scanner
dup
aload 1
invokespecial java.util.Scanner.<init>:(Ljava/io/File;)V
astore 2
start local 2 1: aload 2
ldc "(\\d)+((\\.)(\\d)+)*"
invokevirtual java.util.Scanner.findInLine:(Ljava/lang/String;)Ljava/lang/String;
2: areturn
end local 2 3: StackMap locals:
StackMap stack: java.lang.Exception
pop
4: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/font/FcFontConfiguration;
0 5 1 f Ljava/io/File;
1 3 2 sc Ljava/util/Scanner;
Exception table:
from to target type
0 2 3 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=8, args_size=1
start local 0 0: aload 0
getfield sun.font.FcFontConfiguration.fcInfoFileName:Ljava/lang/String;
ifnonnull 14
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;
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 6
start local 6 10: 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;
11: 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 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".properties"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 13: 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 7
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 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 14: 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 15 0 this Lsun/font/FcFontConfiguration;
2 3 1 hostname Ljava/lang/String;
5 14 1 hostname Ljava/lang/String;
6 14 2 userDir Ljava/lang/String;
7 14 3 version Ljava/lang/String;
8 14 4 fs Ljava/lang/String;
9 14 5 dir Ljava/lang/String;
10 14 6 lang Ljava/lang/String;
13 14 7 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 31
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 29
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 ".family"
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.familyName:Ljava/lang/String;
24: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
25: 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;
26: aload 6
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 8
aaload
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
27: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
28: iinc 8 1
StackMap locals:
StackMap stack:
29: 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 30: iinc 5 1
StackMap locals:
StackMap stack:
31: iload 5
aload 0
getfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
arraylength
if_icmplt 15
end local 5 32: aload 0
invokevirtual sun.font.FcFontConfiguration.getFcInfoFile:()Ljava/io/File;
astore 5
start local 5 33: aload 5
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 6
start local 6 34: aload 6
invokevirtual java.io.File.mkdirs:()Z
pop
35: 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 36: new java.io.FileOutputStream
dup
aload 7
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 8
start local 8 37: aload 1
aload 8
38: ldc "JDK Font Configuration Generated File: *Do Not Edit*"
39: invokevirtual java.util.Properties.store:(Ljava/io/OutputStream;Ljava/lang/String;)V
40: aload 8
invokevirtual java.io.FileOutputStream.close:()V
41: aload 7
aload 5
invokevirtual java.io.File.renameTo:(Ljava/io/File;)Z
istore 9
start local 9 42: iload 9
ifne 49
invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 49
43: getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "rename failed"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
44: 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 45: goto 49
StackMap locals: sun.font.FcFontConfiguration java.util.Properties sun.awt.FcFontManager sun.font.FontConfigManager sun.font.FontConfigManager$FontConfigInfo
StackMap stack: java.lang.Exception
46: pop
47: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 49
48: 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
49: 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 50 0 this Lsun/font/FcFontConfiguration;
1 50 1 props Ljava/util/Properties;
3 50 2 fm Lsun/awt/FcFontManager;
4 50 3 fcm Lsun/font/FontConfigManager;
5 50 4 fcInfo Lsun/font/FontConfigManager$FontConfigInfo;
8 13 5 i I
14 32 5 i I
16 30 6 fci Lsun/font/FontConfigManager$FcCompFont;
17 30 7 styleKey Ljava/lang/String;
21 30 8 j I
33 45 5 fcInfoFile Ljava/io/File;
34 45 6 dir Ljava/io/File;
36 45 7 tempFile Ljava/io/File;
37 45 8 fos Ljava/io/FileOutputStream;
42 45 9 renamed Z
Exception table:
from to target type
32 45 46 Class java.lang.Exception
private void readFcInfo();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=24, 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 3
2: return
3: StackMap locals: java.io.File
StackMap stack:
new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 2
start local 2 4: aload 0
getfield sun.font.FcFontConfiguration.fontManager:Lsun/font/SunFontManager;
checkcast sun.awt.FcFontManager
astore 3
start local 3 5: aload 3
invokevirtual sun.awt.FcFontManager.getFontConfigManager:()Lsun/font/FontConfigManager;
pop
6: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 4
start local 4 7: aload 2
aload 4
invokevirtual java.util.Properties.load:(Ljava/io/InputStream;)V
8: aload 4
invokevirtual java.io.FileInputStream.close:()V
end local 4 9: goto 14
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager
StackMap stack: java.io.IOException
10: pop
11: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 13
12: new java.lang.StringBuilder
dup
ldc "IOException reading from "
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
13: StackMap locals:
StackMap stack:
return
14: StackMap locals:
StackMap stack:
aload 2
ldc "version"
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 15: aload 4
ifnull 16
aload 4
ldc "1"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
16: StackMap locals: java.lang.String
StackMap stack:
return
17: StackMap locals:
StackMap stack:
aload 2
ldc "fcversion"
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 18: aload 5
ifnull 27
19: aload 5
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 6
start local 6 20: iload 6
ifeq 27
21: iload 6
invokestatic sun.font.FontConfigManager.getFontConfigVersion:()I
if_icmpeq 27
22: return
end local 6 23: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager java.lang.String java.lang.String
StackMap stack: java.lang.Exception
pop
24: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 26
25: new java.lang.StringBuilder
dup
ldc "Exception parsing version "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
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
26: StackMap locals:
StackMap stack:
return
27: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.File.lastModified:()J
lstore 6
start local 6 28: iconst_0
istore 8
start local 8 29: goto 37
30: 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 8
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 9
start local 9 31: aload 9
ifnonnull 33
32: goto 38
33: StackMap locals: java.lang.String
StackMap stack:
new java.io.File
dup
aload 9
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 10
start local 10 34: aload 10
invokevirtual java.io.File.exists:()Z
ifeq 36
aload 10
invokevirtual java.io.File.lastModified:()J
lload 6
lcmp
ifle 36
35: return
36: StackMap locals: java.io.File
StackMap stack:
iinc 8 1
end local 10 end local 9 37: StackMap locals:
StackMap stack:
iload 8
iconst_4
if_icmplt 30
38: 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 9
start local 9 39: 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 10
start local 10 40: aload 9
arraylength
istore 11
start local 11 41: iconst_4
istore 12
start local 12 42: iload 11
iload 12
imul
anewarray sun.font.FontConfigManager$FcCompFont
astore 13
start local 13 43: iconst_0
istore 14
start local 14 44: goto 75
45: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager 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 15
start local 15 46: goto 73
47: StackMap locals: int
StackMap stack:
iload 14
iload 12
imul
iload 15
iadd
istore 16
start local 16 48: aload 13
iload 16
new sun.font.FontConfigManager$FcCompFont
dup
invokespecial sun.font.FontConfigManager$FcCompFont.<init>:()V
aastore
49: new java.lang.StringBuilder
dup
aload 9
iload 14
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 15
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 17
start local 17 50: aload 13
iload 16
aaload
aload 9
iload 14
aaload
putfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
51: aload 13
iload 16
aaload
aload 10
iload 14
aaload
putfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
52: aload 13
iload 16
aaload
iload 15
putfield sun.font.FontConfigManager$FcCompFont.style:I
53: aload 2
new java.lang.StringBuilder
dup
aload 17
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 18
start local 18 54: aload 18
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 19
start local 19 55: iload 19
ifgt 57
56: return
57: StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager 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:
aload 13
iload 16
aaload
iload 19
anewarray sun.font.FontConfigManager$FontConfigFont
putfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
58: iconst_0
istore 20
start local 20 59: goto 70
60: StackMap locals: int
StackMap stack:
aload 13
iload 16
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 20
new sun.font.FontConfigManager$FontConfigFont
dup
invokespecial sun.font.FontConfigManager$FontConfigFont.<init>:()V
aastore
61: new java.lang.StringBuilder
dup
aload 17
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 20
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ".family"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 21
start local 21 62: aload 2
aload 21
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 22
start local 22 63: aload 13
iload 16
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 20
aaload
aload 22
putfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
64: new java.lang.StringBuilder
dup
aload 17
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 20
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 21
65: aload 2
aload 21
invokevirtual java.util.Properties.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 23
start local 23 66: aload 23
ifnonnull 68
67: return
68: StackMap locals: java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 13
iload 16
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 20
aaload
aload 23
putfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
end local 23 end local 22 end local 21 69: iinc 20 1
StackMap locals:
StackMap stack:
70: iload 20
iload 19
if_icmplt 60
end local 20 71: aload 13
iload 16
aaload
aload 13
iload 16
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 19 end local 18 end local 17 end local 16 72: iinc 15 1
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager java.lang.String java.lang.String long int java.lang.String[] java.lang.String[] int int sun.font.FontConfigManager$FcCompFont[] int int
StackMap stack:
73: iload 15
iload 12
if_icmplt 47
end local 15 74: iinc 14 1
StackMap locals:
StackMap stack:
75: iload 14
iload 11
if_icmplt 45
end local 14 76: aload 0
aload 13
putfield sun.font.FcFontConfiguration.fcCompFonts:[Lsun/font/FontConfigManager$FcCompFont;
77: goto 81
StackMap locals: sun.font.FcFontConfiguration java.io.File java.util.Properties sun.awt.FcFontManager 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
78: astore 14
start local 14 79: invokestatic sun.font.FontUtilities.debugFonts:()Z
ifeq 81
80: aload 14
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
invokestatic sun.font.FcFontConfiguration.warning:(Ljava/lang/String;)V
end local 14 81: StackMap locals:
StackMap stack:
return
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 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 82 0 this Lsun/font/FcFontConfiguration;
1 82 1 fcFile Ljava/io/File;
4 82 2 props Ljava/util/Properties;
5 82 3 fm Lsun/awt/FcFontManager;
7 9 4 fis Ljava/io/FileInputStream;
15 82 4 version Ljava/lang/String;
18 82 5 fcVersionStr Ljava/lang/String;
20 23 6 fcVersion I
28 82 6 lastModified J
29 82 8 cacheDirIndex I
31 37 9 dir Ljava/lang/String;
34 37 10 dirFile Ljava/io/File;
39 82 9 names [Ljava/lang/String;
40 82 10 fcnames [Ljava/lang/String;
41 82 11 namesLen I
42 82 12 numStyles I
43 82 13 fci [Lsun/font/FontConfigManager$FcCompFont;
44 76 14 i I
46 74 15 s I
48 72 16 index I
50 72 17 key Ljava/lang/String;
54 72 18 lenStr Ljava/lang/String;
55 72 19 nfonts I
59 71 20 f I
62 69 21 fkey Ljava/lang/String;
63 69 22 family Ljava/lang/String;
66 69 23 file Ljava/lang/String;
79 81 14 t Ljava/lang/Throwable;
Exception table:
from to target type
6 9 10 Class java.io.IOException
19 22 23 Class java.lang.Exception
43 56 78 Class java.lang.Throwable
57 67 78 Class java.lang.Throwable
68 77 78 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