Mercurial > emacs
comparison src/alloc.c @ 29781:4a3b0c2cbcd5
(xmalloc, xrealloc, xfree): Define using POINTER_TYPE.
| author | Dave Love <fx@gnu.org> |
|---|---|
| date | Tue, 20 Jun 2000 13:15:58 +0000 |
| parents | 1d802b332e0d |
| children | 4a27d6a88c43 |
comparison
equal
deleted
inserted
replaced
| 29780:520e4132439f | 29781:4a3b0c2cbcd5 |
|---|---|
| 406 } | 406 } |
| 407 | 407 |
| 408 | 408 |
| 409 /* Like malloc but check for no memory and block interrupt input.. */ | 409 /* Like malloc but check for no memory and block interrupt input.. */ |
| 410 | 410 |
| 411 long * | 411 POINTER_TYPE * |
| 412 xmalloc (size) | 412 xmalloc (size) |
| 413 int size; | 413 int size; |
| 414 { | 414 { |
| 415 register long *val; | 415 register POINTER_TYPE *val; |
| 416 | 416 |
| 417 BLOCK_INPUT; | 417 BLOCK_INPUT; |
| 418 val = (long *) malloc (size); | 418 val = (POINTER_TYPE *) malloc (size); |
| 419 UNBLOCK_INPUT; | 419 UNBLOCK_INPUT; |
| 420 | 420 |
| 421 if (!val && size) | 421 if (!val && size) |
| 422 memory_full (); | 422 memory_full (); |
| 423 return val; | 423 return val; |
| 424 } | 424 } |
| 425 | 425 |
| 426 | 426 |
| 427 /* Like realloc but check for no memory and block interrupt input.. */ | 427 /* Like realloc but check for no memory and block interrupt input.. */ |
| 428 | 428 |
| 429 long * | 429 POINTER_TYPE * |
| 430 xrealloc (block, size) | 430 xrealloc (block, size) |
| 431 long *block; | 431 POINTER_TYPE *block; |
| 432 int size; | 432 int size; |
| 433 { | 433 { |
| 434 register long *val; | 434 register POINTER_TYPE *val; |
| 435 | 435 |
| 436 BLOCK_INPUT; | 436 BLOCK_INPUT; |
| 437 /* We must call malloc explicitly when BLOCK is 0, since some | 437 /* We must call malloc explicitly when BLOCK is 0, since some |
| 438 reallocs don't do this. */ | 438 reallocs don't do this. */ |
| 439 if (! block) | 439 if (! block) |
| 440 val = (long *) malloc (size); | 440 val = (POINTER_TYPE *) malloc (size); |
| 441 else | 441 else |
| 442 val = (long *) realloc (block, size); | 442 val = (POINTER_TYPE *) realloc (block, size); |
| 443 UNBLOCK_INPUT; | 443 UNBLOCK_INPUT; |
| 444 | 444 |
| 445 if (!val && size) memory_full (); | 445 if (!val && size) memory_full (); |
| 446 return val; | 446 return val; |
| 447 } | 447 } |
| 449 | 449 |
| 450 /* Like free but block interrupt input.. */ | 450 /* Like free but block interrupt input.. */ |
| 451 | 451 |
| 452 void | 452 void |
| 453 xfree (block) | 453 xfree (block) |
| 454 long *block; | 454 POINTER_TYPE *block; |
| 455 { | 455 { |
| 456 BLOCK_INPUT; | 456 BLOCK_INPUT; |
| 457 free (block); | 457 free (block); |
| 458 UNBLOCK_INPUT; | 458 UNBLOCK_INPUT; |
| 459 } | 459 } |
