size_t error_alloc[IM_ERROR_COUNT];
i_errmsg error_stack[IM_ERROR_COUNT];
#ifdef IMAGER_LOG
- int log_level;
+ /* the log file and level for this context */
FILE *lg_file;
+ int log_level;
+
+ /* whether we own the lg_file, false for stderr and for cloned contexts */
+ int own_log;
+
+ /* values supplied by lhead */
const char *filename;
int line;
#endif
i_img_dim max_width, max_height;
size_t max_bytes;
+ /* per context storage */
+ size_t slot_alloc;
+ void **slots;
+
ptrdiff_t refcount;
} im_context_struct;
#define DEF_BYTES_LIMIT 0x40000000
+#define im_size_t_max (~(size_t)0)
+
#endif