This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
PerlIOXxxx_dups for all but Win32
[perl5.git] / ext / PerlIO / Scalar / Scalar.xs
index d8ee701..3bd37de 100644 (file)
@@ -236,6 +236,18 @@ PerlIOScalar_open(pTHX_ PerlIO_funcs *self, PerlIO_list_t *layers, IV n, const c
  return NULL;
 }
 
+PerlIO *
+PerlIOScalar_dup(pTHX_ PerlIO *f, PerlIO *o, CLONE_PARAMS *param)
+{
+ if ((f = PerlIOBase_dup(aTHX_ f, o, param)))
+  {
+   PerlIOScalar *fs = PerlIOSelf(f,PerlIOScalar);
+   PerlIOScalar *os = PerlIOSelf(o,PerlIOScalar);
+   /* var has been set by implicit push */
+   fs->posn = os->posn;
+  }
+ return f;
+}
 
 PerlIO_funcs PerlIO_scalar = {
  "Scalar",
@@ -246,6 +258,7 @@ PerlIO_funcs PerlIO_scalar = {
  PerlIOScalar_open,
  NULL,
  PerlIOScalar_fileno,
+ PerlIOScalar_dup,
  PerlIOBase_read,
  PerlIOScalar_unread,
  PerlIOScalar_write,