mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
tests,w32: Use GetTempPath to get the path for temporary files.
* tests/gpgscm/ffi.c (do_get_temp_path): New function. (ffi_init): Make function available. * tests/gpgscm/tests.scm (mkdtemp): Use the new function. Fixes-commit: 06f1f163e96f1039304fd3cf565cf9de1ca45849 Signed-off-by: Justus Winter <justus@g10code.com>
This commit is contained in:
parent
74c1f30ad6
commit
d17840c3f4
@ -341,6 +341,24 @@ do_seek (scheme *sc, pointer args)
|
|||||||
? gpg_error_from_syserror () : 0);
|
? gpg_error_from_syserror () : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static pointer
|
||||||
|
do_get_temp_path (scheme *sc, pointer args)
|
||||||
|
{
|
||||||
|
FFI_PROLOG ();
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
char buffer[MAX_PATH+1];
|
||||||
|
#endif
|
||||||
|
FFI_ARGS_DONE_OR_RETURN (sc, args);
|
||||||
|
|
||||||
|
#ifdef HAVE_W32_SYSTEM
|
||||||
|
if (GetTempPath (MAX_PATH+1, buffer) == 0)
|
||||||
|
FFI_RETURN_STRING (sc, "/temp");
|
||||||
|
FFI_RETURN_STRING (sc, buffer);
|
||||||
|
#else
|
||||||
|
FFI_RETURN_STRING (sc, "/tmp");
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
static pointer
|
static pointer
|
||||||
do_mkdtemp (scheme *sc, pointer args)
|
do_mkdtemp (scheme *sc, pointer args)
|
||||||
{
|
{
|
||||||
@ -1352,6 +1370,7 @@ ffi_init (scheme *sc, const char *argv0, const char *scriptname,
|
|||||||
ffi_define_function (sc, fdopen);
|
ffi_define_function (sc, fdopen);
|
||||||
ffi_define_function (sc, close);
|
ffi_define_function (sc, close);
|
||||||
ffi_define_function (sc, seek);
|
ffi_define_function (sc, seek);
|
||||||
|
ffi_define_function (sc, get_temp_path);
|
||||||
ffi_define_function_name (sc, "_mkdtemp", mkdtemp);
|
ffi_define_function_name (sc, "_mkdtemp", mkdtemp);
|
||||||
ffi_define_function (sc, unlink);
|
ffi_define_function (sc, unlink);
|
||||||
ffi_define_function (sc, unlink_recursively);
|
ffi_define_function (sc, unlink_recursively);
|
||||||
|
@ -272,7 +272,7 @@
|
|||||||
(define (mkdtemp . components)
|
(define (mkdtemp . components)
|
||||||
(canonical-path (_mkdtemp (if (null? components)
|
(canonical-path (_mkdtemp (if (null? components)
|
||||||
(path-join
|
(path-join
|
||||||
(if *win32* (getenv "Temp") "/tmp")
|
(get-temp-path)
|
||||||
(string-append "gpgscm-" (get-isotime) "-"
|
(string-append "gpgscm-" (get-isotime) "-"
|
||||||
(basename-suffix *scriptname* ".scm")
|
(basename-suffix *scriptname* ".scm")
|
||||||
"-XXXXXX"))
|
"-XXXXXX"))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user