summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorAndy Broad <andy@broad.ology.org.uk>2015-08-19 12:29:54 -0400
committerJarkko Hietaniemi <jhi@iki.fi>2015-09-05 11:12:44 -0400
commit5775909460ed9d9c7760177b3d4a7e715307613f (patch)
treec214ec43a5415b8c6e016a941cdfe770f0be22af /sv.c
parent54fa14d78fe32254d21c519f3fd1be65ac4ef63e (diff)
downloadperl-5775909460ed9d9c7760177b3d4a7e715307613f.tar.gz
amigaos4: clone differently
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sv.c b/sv.c
index b39098f953..aec1568be4 100644
--- a/sv.c
+++ b/sv.c
@@ -12931,7 +12931,11 @@ Perl_fp_dup(pTHX_ PerlIO *const fp, const char type, CLONE_PARAMS *const param)
return ret;
/* create anew and remember what it is */
+#ifdef __amigaos4__
+ ret = PerlIO_fdupopen(aTHX_ fp, param, PERLIO_DUP_CLONE|PERLIO_DUP_FD);
+#else
ret = PerlIO_fdupopen(aTHX_ fp, param, PERLIO_DUP_CLONE);
+#endif
ptr_table_store(PL_ptr_table, fp, ret);
return ret;
}
@@ -14404,9 +14408,11 @@ perl_clone(PerlInterpreter *proto_perl, UV flags)
/* perlhost.h so we need to call into it
to clone the host, CPerlHost should have a c interface, sky */
+#if !defined(__amigaos4__)
if (flags & CLONEf_CLONE_HOST) {
return perl_clone_host(proto_perl,flags);
}
+#endif
return perl_clone_using(proto_perl, flags,
proto_perl->IMem,
proto_perl->IMemShared,