hb_mutex_lock (blob->lock);
- if (HB_DEBUG_BLOB)
+ (void) (HB_DEBUG_BLOB &&
fprintf (stderr, "%p %s (%d) -> %p\n", blob, __FUNCTION__,
- blob->lock_count, blob->data);
+ blob->lock_count, blob->data));
blob->lock_count++;
hb_mutex_lock (blob->lock);
- if (HB_DEBUG_BLOB)
+ (void) (HB_DEBUG_BLOB &&
fprintf (stderr, "%p %s (%d) -> %p\n", blob, __FUNCTION__,
- blob->lock_count, blob->data);
+ blob->lock_count, blob->data));
assert (blob->lock_count > 0);
blob->lock_count--;
#endif
if ((uintptr_t) -1L == pagesize) {
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: failed to get pagesize: %s\n", blob, __FUNCTION__, strerror (errno));
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: failed to get pagesize: %s\n", blob, __FUNCTION__, strerror (errno)));
return FALSE;
}
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: pagesize is %lu\n", blob, __FUNCTION__, (unsigned long) pagesize);
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: pagesize is %lu\n", blob, __FUNCTION__, (unsigned long) pagesize));
mask = ~(pagesize-1);
addr = (const char *) (((uintptr_t) blob->data) & mask);
length = (const char *) (((uintptr_t) blob->data + blob->length + pagesize-1) & mask) - addr;
- if (HB_DEBUG_BLOB)
+ (void) (HB_DEBUG_BLOB &&
fprintf (stderr, "%p %s: calling mprotect on [%p..%p] (%lu bytes)\n",
blob, __FUNCTION__,
- addr, addr+length, (unsigned long) length);
+ addr, addr+length, (unsigned long) length));
if (-1 == mprotect ((void *) addr, length, PROT_READ | PROT_WRITE)) {
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: %s\n", blob, __FUNCTION__, strerror (errno));
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: %s\n", blob, __FUNCTION__, strerror (errno)));
return FALSE;
}
- if (HB_DEBUG_BLOB)
+ (void) (HB_DEBUG_BLOB &&
fprintf (stderr, "%p %s: successfully made [%p..%p] (%lu bytes) writable\n",
blob, __FUNCTION__,
- addr, addr+length, (unsigned long) length);
+ addr, addr+length, (unsigned long) length));
return TRUE;
#else
return FALSE;
static void
try_writable_inplace_locked (hb_blob_t *blob)
{
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: making writable\n", blob, __FUNCTION__);
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: making writable\n", blob, __FUNCTION__));
if (_try_make_writable_inplace_unix_locked (blob)) {
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: making writable -> succeeded\n", blob, __FUNCTION__);
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: making writable -> succeeded\n", blob, __FUNCTION__));
blob->mode = HB_MEMORY_MODE_WRITABLE;
} else {
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: making writable -> FAILED\n", blob, __FUNCTION__);
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: making writable -> FAILED\n", blob, __FUNCTION__));
/* Failed to make writable inplace, mark that */
blob->mode = HB_MEMORY_MODE_READONLY;
}
{
char *new_data;
- if (HB_DEBUG_BLOB)
+ (void) (HB_DEBUG_BLOB &&
fprintf (stderr, "%p %s (%d) -> %p\n", blob, __FUNCTION__,
- blob->lock_count, blob->data);
+ blob->lock_count, blob->data));
if (blob->lock_count)
goto done;
new_data = malloc (blob->length);
if (new_data) {
- if (HB_DEBUG_BLOB)
- fprintf (stderr, "%p %s: dupped successfully -> %p\n", blob, __FUNCTION__, blob->data);
+ (void) (HB_DEBUG_BLOB &&
+ fprintf (stderr, "%p %s: dupped successfully -> %p\n", blob, __FUNCTION__, blob->data));
memcpy (new_data, blob->data, blob->length);
_hb_blob_destroy_user_data (blob);
blob->mode = HB_MEMORY_MODE_WRITABLE;