File: hnjalloc.w

package info (click to toggle)
texlive-bin 2018.20181218.49446-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 186,920 kB
  • sloc: ansic: 873,264; cpp: 311,278; perl: 82,918; sh: 23,243; makefile: 8,590; lex: 4,939; python: 4,462; pascal: 3,813; java: 3,569; yacc: 2,901; tcl: 2,379; exp: 2,031; xml: 844; ruby: 678; lisp: 398; sed: 331; asm: 140; csh: 46; awk: 30
file content (69 lines) | stat: -rw-r--r-- 1,945 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
% hnjalloc.w
%
% LibHnj is dual licensed under LGPL and MPL. Boilerplate for both
% licenses follows.
%
%
% LibHnj - a library for high quality hyphenation and justification
% Copyright (C) 1998 Raph Levien, (C) 2001 ALTLinux, Moscow
%
% This library is free software; you can redistribute it and/or
% modify it under the terms of the GNU Library General Public
% License as published by the Free Software Foundation; either
% version 2 of the License, or (at your option) any later version.
%
% This library is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
% Library General Public License for more details.
%
% You should have received a copy of the GNU Library General Public
% License along with this library; if not, write to the
% Free Software Foundation, Inc., 59 Temple Place - Suite 330,
% Boston, MA  02111-1307  USA.
%
%
%
% The contents of this file are subject to the Mozilla Public License
% Version 1.0 (the "MPL"); you may not use this file except in
% compliance with the MPL.  You may obtain a copy of the MPL at
% http://www.mozilla.org/MPL/
%
% Software distributed under the MPL is distributed on an "AS IS" basis,
% WITHOUT WARRANTY OF ANY KIND, either express or implied. See the MPL
% for the specific language governing rights and limitations under the
% MPL.

@ wrappers for malloc
@c

#include <stdlib.h>
#include <stdio.h>
#include "lang/hnjalloc.h"

void *hnj_malloc(int size)
{
    void *p;

    p = malloc((size_t) size);
    if (p == NULL) {
        fprintf(stderr, "can't allocate %d bytes\n", size);
        exit(1);
    }
    return p;
}

void *hnj_realloc(void *p, int size)
{
    p = realloc(p, (size_t) size);
    if (p == NULL) {
        fprintf(stderr, "can't allocate %d bytes\n", size);
        exit(1);
    }
    return p;
}

void hnj_free(void *p)
{
    free(p);
}