- Status = TianoDecompress(Source, SrcSize, Destination, DstSize, &Scratch, sizeof(SCRATCH_DATA));\r
+ Status = TianoGetInfo(Source, SrcSize, DstSize, &ScratchSize);\r
+ if (Status == EFI_SUCCESS) {\r
+ Scratch = (VOID *)malloc(ScratchSize);\r
+ *Destination = (VOID *)malloc(*DstSize);\r
+ if (Scratch != NULL && *Destination != NULL) {\r
+ Status = TianoDecompress(Source, SrcSize, *Destination, *DstSize, Scratch, ScratchSize);\r
+ } else {\r
+ Status = EFI_OUT_OF_RESOURCES;\r
+ }\r
+ }\r