Mercurial > hg > octave-nkf
annotate liboctave/tempnam.c @ 14300:d1c45dd1a038 gui
Readded .hgsub.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Tue, 31 Jan 2012 21:32:43 +0100 |
parents | 42d098307c30 |
children | 3d8ace26c5b4 |
rev | line source |
---|---|
1048 | 1 /* Copyright (C) 1991, 1993 Free Software Foundation, Inc. |
2 This file is part of the GNU C Library. | |
3 | |
4 The GNU C Library is free software; you can redistribute it and/or | |
5 modify it under the terms of the GNU Library General Public License as | |
6 published by the Free Software Foundation; either version 2 of the | |
7 License, or (at your option) any later version. | |
8 | |
9 The GNU C Library is distributed in the hope that it will be useful, | |
10 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
12 Library General Public License for more details. | |
13 | |
14 You should have received a copy of the GNU Library General Public | |
15 License along with the GNU C Library; see the file COPYING.LIB. If | |
5307 | 16 not, write to the Free Software Foundation, Inc., 51 Franklin Street, |
17 Fifth Floor, Boston, MA 02110-1301, USA. */ | |
1048 | 18 |
19 #ifdef HAVE_CONFIG_H | |
1243 | 20 #include <config.h> |
1048 | 21 #endif |
22 | |
23 #ifndef HAVE_TEMPNAM | |
24 | |
25 #include <stddef.h> | |
1351 | 26 #include <stdio.h> |
1048 | 27 #include <stdlib.h> |
28 #include <string.h> | |
29 | |
30 extern char *__stdio_gen_tempname (const char *dir, const char *pfx, | |
10317
42d098307c30
untabify additional source files
John W. Eaton <jwe@octave.org>
parents:
5307
diff
changeset
|
31 int dir_search, size_t *lenptr, |
42d098307c30
untabify additional source files
John W. Eaton <jwe@octave.org>
parents:
5307
diff
changeset
|
32 FILE **streamptr); |
1048 | 33 |
34 /* Generate a unique temporary filename using up to five characters of PFX | |
35 if it is not NULL. The directory to put this file in is searched for | |
36 as follows: First the environment variable "TMPDIR" is checked. | |
37 If it contains the name of a writable directory, that directory is used. | |
38 If not and if DIR is not NULL, that value is checked. If that fails, | |
39 P_tmpdir is tried and finally "/tmp". The storage for the filename | |
40 is allocated by `malloc'. */ | |
41 char * | |
42 tempnam (const char *dir, const char *pfx) | |
43 { | |
44 size_t len; | |
45 register char *s; | |
46 register char *t = __stdio_gen_tempname(dir, pfx, 1, &len, (FILE **) NULL); | |
47 | |
48 if (t == NULL) | |
49 return NULL; | |
50 | |
51 s = (char *) malloc(len); | |
52 if (s == NULL) | |
53 return NULL; | |
54 | |
55 (void) memcpy(s, t, len); | |
56 return s; | |
57 } | |
58 | |
59 #endif |