summaryrefslogtreecommitdiff
path: root/src/bin/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/main.c')
-rw-r--r--src/bin/main.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/bin/main.c b/src/bin/main.c
index a7acc77..5861843 100644
--- a/src/bin/main.c
+++ b/src/bin/main.c
@@ -45,34 +45,34 @@ my_malloc(size_t size)
}
static void *
-my_alloc(size_t min, size_t max, size_t *actual)
+my_alloc(size_t size, size_t *actual)
{
- size_t target = min;
+ size_t target = size;
void *p;
- if(NEVER(target == 0))
- target = 1;
- else{
- target--;
- target |= target >> 1;
- target |= target >> 2;
- target |= target >> 4;
- target |= target >> 8;
- target |= target >> 16;
- target |= target >> 32;
- target++;
+ if(actual){
+ if(NEVER(target == 0))
+ target = 1;
+ else{
+ target--;
+ target |= target >> 1;
+ target |= target >> 2;
+ target |= target >> 4;
+ target |= target >> 8;
+ target |= target >> 16;
+ target |= target >> 32;
+ target++;
+ }
}
- if(max && (target > max))
- target = max;
-
p = my_malloc(target);
- if((p == NULL) && (min < target)){
- target = min;
+ if((p == NULL) && (size < target)){
+ target = size;
p = my_malloc(target);
}
- *actual = target;
+ if(actual)
+ *actual = target;
return p;
}