}
private void merge(List<DoABC> doABCs, boolean debug, boolean runPeephole, String name)
{
Encoder encoder;
Decoder decoder;
boolean skipFrame = false;
int majorVersion = 0, minorVersion = 0, abcSize = doABCs.size(), flag = 1;
if (abcSize == 0)
{
return;
}
else if (abcSize == 1)
{
flag = doABCs.get(0).flag;
}
else
{
flag = 1;
}
Decoder[] decoders = new Decoder[abcSize];
ConstantPool[] pools = new ConstantPool[abcSize];
// create decoders...
for (int j = 0; j < abcSize; j++)
{
DoABC tag = doABCs.get(j);
BytecodeBuffer in = new BytecodeBuffer(tag.abc);
try
{
// ThreadLocalToolkit.logInfo(tag.name);
decoders[j] = new Decoder(in);
majorVersion = decoders[j].majorVersion;
minorVersion = decoders[j].minorVersion;
pools[j] = decoders[j].constantPool;
}
catch (Throwable ex)