# GetDecompressorWorkBufferSize

Gets the size of the work buffer needed by a decompression engine.

### Synopsis

`int32 GetDecompressorWorkBufferSize(const TagArg *tags);
int32 GetDecompressorWorkBufferSizeVA(uint32 tags, ...);`

### Description

Returns the size of the work buffer needed by a decompression engine. You can then allocate a buffer of that size and supply the pointer with the COMP_TAG_WORKBUFFER tag when creating a decompression engine. If the COMP_TAG_WORKBUFFER tag is not supplied when creating a decompressor, the folio automatically allocates the memory needed for the decompression engine.

### Arguments

tags
  A pointer to an array of tag arguments containing extra data for this function. This must currently always be NULL.

### Return Value

A positive value indicates the size of the work buffer needed in bytes, while a negative value indicates an error. Possible error codes currently include:

COMP_ERR_BADTAG
  An unknown tag was supplied.

### Implementation

Folio call implemented in compression folio V24.

### Associated Files

compression.h

### See Also

``CreateDecompressor`(), DeleteDecompressor()
`