ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/salloc.C
(Generate patch)

Comparing rxvt-unicode/src/salloc.C (file contents):
Revision 1.6 by pcg, Thu Apr 8 20:31:45 2004 UTC vs.
Revision 1.9 by root, Mon Feb 20 22:40:35 2006 UTC

1/*--------------------------------*-C-*---------------------------------* 1/*--------------------------------*-C-*---------------------------------*
2 * File: salloc.C 2 * File: salloc.C
3 *----------------------------------------------------------------------* 3 *----------------------------------------------------------------------*
4 * 4 *
5 * All portions of code are copyright by their respective author/s. 5 * All portions of code are copyright by their respective author/s.
6 * Copyright (c) 2003-2004 Marc Lehmann <pcg@goof.com> 6 * Copyright (c) 2003-2006 Marc Lehmann <pcg@goof.com>
7 * 7 *
8 * This program is free software; you can redistribute it and/or modify 8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by 9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 2 of the License, or 10 * the Free Software Foundation; either version 2 of the License, or
11 * (at your option) any later version. 11 * (at your option) any later version.
68 } 68 }
69 69
70 return r; 70 return r;
71} 71}
72 72
73void *
74rxvt_salloc::alloc (void *data, unsigned int datalen)
75{
76 void *s = alloc ();
77
78 if (datalen < size)
79 {
80 memcpy (s, data, datalen);
81 memset ((unsigned char *)s + datalen, 0, size - datalen); // not strictly required for screen.C
82 }
83 else
84 memcpy (s, data, size);
85
86 return s;
87}
88
73void 89void
74rxvt_salloc::free (void *data) 90rxvt_salloc::free (void *data)
75{ 91{
92 if (!data)
93 return;
94
76 chain *line = (chain *)data; 95 chain *line = (chain *)data;
77 line->next = firstline; 96 line->next = firstline;
78 firstline = line; 97 firstline = line;
79} 98}
80 99

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines