Skip to content

Commit 7a3c940

Browse files
committed
syncio interface only enabled when compression is enabled
1 parent 41f2673 commit 7a3c940

File tree

1 file changed

+38
-32
lines changed

1 file changed

+38
-32
lines changed

programs/fileio.c

Lines changed: 38 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -48,38 +48,6 @@
4848
FIO_display_prefs_t g_display_prefs = {2, FIO_ps_auto};
4949
UTIL_time_t g_displayClock = UTIL_TIME_INITIALIZER;
5050

51-
/* *************************************
52-
* Synchronous compression IO helpers
53-
* Lightweight wrapper used by compression paths to manage buffered
54-
* reads/writes without the async job machinery.
55-
***************************************/
56-
typedef struct {
57-
const FIO_prefs_t* prefs;
58-
FILE* srcFile;
59-
FILE* dstFile;
60-
unsigned storedSkips;
61-
U8* inBuffer;
62-
size_t inCapacity;
63-
U8* srcBuffer;
64-
size_t srcBufferLoaded;
65-
U8* outBuffer;
66-
size_t outCapacity;
67-
} FIO_SyncCompressIO;
68-
69-
static void FIO_SyncCompressIO_init(FIO_SyncCompressIO* io,
70-
const FIO_prefs_t* prefs,
71-
size_t inCapacity,
72-
size_t outCapacity);
73-
static void FIO_SyncCompressIO_destroy(FIO_SyncCompressIO* io);
74-
static void FIO_SyncCompressIO_setSrc(FIO_SyncCompressIO* io, FILE* file);
75-
static void FIO_SyncCompressIO_clearSrc(FIO_SyncCompressIO* io);
76-
static void FIO_SyncCompressIO_setDst(FIO_SyncCompressIO* io, FILE* file);
77-
static int FIO_SyncCompressIO_closeDst(FIO_SyncCompressIO* io);
78-
static size_t FIO_SyncCompressIO_fillBuffer(FIO_SyncCompressIO* io, size_t minToHave);
79-
static void FIO_SyncCompressIO_consumeBytes(FIO_SyncCompressIO* io, size_t n);
80-
static void FIO_SyncCompressIO_commitOut(FIO_SyncCompressIO* io, const void* buffer, size_t size);
81-
static void FIO_SyncCompressIO_finish(FIO_SyncCompressIO* io);
82-
8351
#define ZSTD_STATIC_LINKING_ONLY /* ZSTD_magicNumber, ZSTD_frameHeaderSize_max */
8452
#include "../lib/zstd.h"
8553
#include "../lib/zstd_errors.h" /* ZSTD_error_frameParameter_windowTooLarge */
@@ -157,6 +125,42 @@ char const* FIO_lzmaVersion(void)
157125
#define TEMPORARY_FILE_PERMISSIONS (0600)
158126
#endif
159127

128+
129+
#ifndef ZSTD_NOCOMPRESS
130+
131+
/* *************************************
132+
* Synchronous compression IO helpers
133+
* Lightweight wrapper used by compression paths to manage buffered
134+
* reads/writes without the async job machinery.
135+
***************************************/
136+
typedef struct {
137+
const FIO_prefs_t* prefs;
138+
FILE* srcFile;
139+
FILE* dstFile;
140+
unsigned storedSkips;
141+
U8* inBuffer;
142+
size_t inCapacity;
143+
U8* srcBuffer;
144+
size_t srcBufferLoaded;
145+
U8* outBuffer;
146+
size_t outCapacity;
147+
} FIO_SyncCompressIO;
148+
149+
static void FIO_SyncCompressIO_init(FIO_SyncCompressIO* io,
150+
const FIO_prefs_t* prefs,
151+
size_t inCapacity,
152+
size_t outCapacity);
153+
static void FIO_SyncCompressIO_destroy(FIO_SyncCompressIO* io);
154+
static void FIO_SyncCompressIO_setSrc(FIO_SyncCompressIO* io, FILE* file);
155+
static void FIO_SyncCompressIO_clearSrc(FIO_SyncCompressIO* io);
156+
static void FIO_SyncCompressIO_setDst(FIO_SyncCompressIO* io, FILE* file);
157+
static int FIO_SyncCompressIO_closeDst(FIO_SyncCompressIO* io);
158+
static size_t FIO_SyncCompressIO_fillBuffer(FIO_SyncCompressIO* io, size_t minToHave);
159+
static void FIO_SyncCompressIO_consumeBytes(FIO_SyncCompressIO* io, size_t n);
160+
static void FIO_SyncCompressIO_commitOut(FIO_SyncCompressIO* io, const void* buffer, size_t size);
161+
static void FIO_SyncCompressIO_finish(FIO_SyncCompressIO* io);
162+
163+
160164
static unsigned FIO_sparseWrite(FILE* file,
161165
const void* buffer, size_t bufferSize,
162166
const FIO_prefs_t* const prefs,
@@ -384,6 +388,8 @@ static void FIO_SyncCompressIO_finish(FIO_SyncCompressIO* io)
384388
io->storedSkips = 0;
385389
}
386390

391+
#endif /* ZSTD_NOCOMPRESS */
392+
387393
/*-************************************
388394
* Signal (Ctrl-C trapping)
389395
**************************************/

0 commit comments

Comments
 (0)