This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
18 years agoPerl_do_vop can profitably use Perl_sv_usepvn_flags, as it has
Nicholas Clark [Sun, 16 Apr 2006 13:25:18 +0000 (13:25 +0000)]
Perl_do_vop can profitably use Perl_sv_usepvn_flags, as it has
allocated space for an initialised a trailing NUL.

p4raw-id: //depot/perl@27843

18 years agoIn Perl_sv_usepvn_flags, assert() that the caller has RTFM.
Nicholas Clark [Sun, 16 Apr 2006 12:06:57 +0000 (12:06 +0000)]
In Perl_sv_usepvn_flags, assert() that the caller has RTFM.

p4raw-id: //depot/perl@27842

18 years agoProvide a new flag for sv_usepvn_flags, SV_HAS_TRAILING_NUL, which
Nicholas Clark [Sun, 16 Apr 2006 11:35:38 +0000 (11:35 +0000)]
Provide a new flag for sv_usepvn_flags, SV_HAS_TRAILING_NUL, which
signals that the buffer passed in is already well-formed for use as
SvPVX (i.e. it is followed by a trailing NUL), and hence the realloc()
to add a NUL can be skipped.

p4raw-id: //depot/perl@27841

18 years agoMerge sv_usepvn and sv_usepvn_mg into sv_usepvn_flags. "Promote" the
Nicholas Clark [Sun, 16 Apr 2006 11:03:28 +0000 (11:03 +0000)]
Merge sv_usepvn and sv_usepvn_mg into sv_usepvn_flags. "Promote" the
other two to mathoms.c

p4raw-id: //depot/perl@27840

18 years agoIn Perl_sv_usepvn(), force a move under DEBUGGING to shake out caller
Nicholas Clark [Sun, 16 Apr 2006 10:37:46 +0000 (10:37 +0000)]
In Perl_sv_usepvn(), force a move under DEBUGGING to shake out caller
bugs.

p4raw-id: //depot/perl@27839

18 years agoFix htmllink.t to cater for the case where perladmin isn't an empty
Nicholas Clark [Sun, 16 Apr 2006 10:37:04 +0000 (10:37 +0000)]
Fix htmllink.t to cater for the case where perladmin isn't an empty
string.

p4raw-id: //depot/perl@27838

18 years agoCoverity notes that we might be dereferencing fgv before a check that
Nicholas Clark [Sun, 16 Apr 2006 09:36:18 +0000 (09:36 +0000)]
Coverity notes that we might be dereferencing fgv before a check that
it's not NULL. In fact, the code ordering meant that one "if (fgv)"
would always be true. So fix this.

p4raw-id: //depot/perl@27837

18 years agoupdate to pp_complement() via Coverity
Andy Lester [Sun, 16 Apr 2006 00:14:23 +0000 (19:14 -0500)]
update to pp_complement() via Coverity
Message-ID: <20060416051423.GA17063@petdance.com>

p4raw-id: //depot/perl@27836

18 years agoclean up hv_assert()
Andy Lester [Sat, 15 Apr 2006 23:18:27 +0000 (18:18 -0500)]
clean up hv_assert()
Message-ID: <20060416041827.GA3031@petdance.com>

p4raw-id: //depot/perl@27835

18 years agoRemoved unused var in a macro
Andy Lester [Sat, 15 Apr 2006 23:32:53 +0000 (18:32 -0500)]
Removed unused var in a macro
Message-ID: <20060416043253.GA3438@petdance.com>

p4raw-id: //depot/perl@27834

18 years agoChange anchor generation in Pod::Html for "=item item 2"
Jan Dubois [Fri, 14 Apr 2006 13:13:20 +0000 (06:13 -0700)]
Change anchor generation in Pod::Html for "=item item 2"
From: "Jan Dubois" <jand@ActiveState.com>
Message-ID: <017a01c65fff$dfd0f370$2217a8c0@candy>

p4raw-id: //depot/perl@27833

18 years agoPod::Html::depod() doesn't work correctly for multi-line strings
Jan Dubois [Mon, 10 Apr 2006 15:32:23 +0000 (08:32 -0700)]
Pod::Html::depod() doesn't work correctly for multi-line strings
From: "Jan Dubois" <jand@ActiveState.com>
Message-ID: <017b01c65cee$a2f5fe00$6062a8c0@candy>

p4raw-id: //depot/perl@27832

18 years agoMissing part of change 25186
Jan Dubois [Thu, 13 Apr 2006 18:26:29 +0000 (11:26 -0700)]
Missing part of change 25186
From: "Jan Dubois" <jand@ActiveState.com>
Message-ID: <009401c65f62$74fded70$2217a8c0@candy>

p4raw-id: //depot/perl@27831

18 years agoMissing part of change 25676
Jan Dubois [Thu, 13 Apr 2006 18:19:26 +0000 (11:19 -0700)]
Missing part of change 25676
From: "Jan Dubois" <jand@ActiveState.com>
Message-ID: <009001c65f61$78866d60$2217a8c0@candy>

p4raw-id: //depot/perl@27830

18 years agoHandle null io in leavewrite (not possible?) (Coverity)
bah@longitude.com [Sat, 15 Apr 2006 14:13:41 +0000 (10:13 -0400)]
Handle null io in leavewrite (not possible?) (Coverity)
Message-ID: <1661.38.96.138.153.1145124821.squirrel@mail.longitude.com>
Date: Sat, 15 Apr 2006 14:13:41 -0400 (EDT)

p4raw-id: //depot/perl@27829

18 years agoPotential (?) memory leak in Storable.xs (Coverity)
bah@longitude.com [Sat, 15 Apr 2006 13:54:10 +0000 (09:54 -0400)]
Potential (?) memory leak in Storable.xs (Coverity)
Message-ID: <1561.38.96.138.153.1145123650.squirrel@mail.longitude.com>
Date: Sat, 15 Apr 2006 13:54:10 -0400 (EDT)

p4raw-id: //depot/perl@27828

18 years agoTeach Perl_do_sv_dump how to cope with IOs that have bogus things in
Nicholas Clark [Sat, 15 Apr 2006 22:44:30 +0000 (22:44 +0000)]
Teach Perl_do_sv_dump how to cope with IOs that have bogus things in
GV slots. (Which source filters are prone to do to them).

p4raw-id: //depot/perl@27827

18 years agoCoverity was getting upset about an assignment from a function
Nicholas Clark [Sat, 15 Apr 2006 21:50:12 +0000 (21:50 +0000)]
Coverity was getting upset about an assignment from a function
returning int to a U8 variable. Curiously it was only getting upset
about the first of many.
However, we are doing NO ERROR CHECKING on whether we read in the
requested number of bytes of bytecode. All except BGET_op_tr_array
will now croak on a short read.

p4raw-id: //depot/perl@27826

18 years agoCoverity reports that Storable can potentially cause a NULL pointer
Nicholas Clark [Sat, 15 Apr 2006 21:43:13 +0000 (21:43 +0000)]
Coverity reports that Storable can potentially cause a NULL pointer
dereference while iterating a hash. This should never happen unless
the hash lies about how many keys it has, so croak if a fib is spotted.

p4raw-id: //depot/perl@27825

18 years agoCoverity notes that resource are leaked in the unfinished and never
Nicholas Clark [Sat, 15 Apr 2006 21:11:44 +0000 (21:11 +0000)]
Coverity notes that resource are leaked in the unfinished and never
called function _utf8_to_bytes.

p4raw-id: //depot/perl@27824

18 years agoCoverity correctly reports that gv might (just) be NULL. So don't
Nicholas Clark [Sat, 15 Apr 2006 20:55:20 +0000 (20:55 +0000)]
Coverity correctly reports that gv might (just) be NULL. So don't
derefernece it if it is.

p4raw-id: //depot/perl@27823

18 years agoUpdate the assertion to a croak "Out of range special SV number"
Nicholas Clark [Sat, 15 Apr 2006 20:54:44 +0000 (20:54 +0000)]
Update the assertion to a croak "Out of range special SV number"
to give ByteLoader more meaningful failure diagnostics.

p4raw-id: //depot/perl@27822

18 years agoI believe that it makes little sense for the simple user filters
Nicholas Clark [Sat, 15 Apr 2006 20:19:22 +0000 (20:19 +0000)]
I believe that it makes little sense for the simple user filters
provided by coderefs to be run in block mode. Hence always read from
the upstream filter in line mode, and always call the user's filter
with 1 line.

p4raw-id: //depot/perl@27821

18 years agoFix a bug - the introduction of the caching code means that we should
Nicholas Clark [Sat, 15 Apr 2006 20:01:58 +0000 (20:01 +0000)]
Fix a bug - the introduction of the caching code means that we should
initialise the SV upstream after it.
assert that filter_sub is always non-null now.

p4raw-id: //depot/perl@27820

18 years agoAugment the user filter caching code so that if the user filter returns
Nicholas Clark [Sat, 15 Apr 2006 19:37:32 +0000 (19:37 +0000)]
Augment the user filter caching code so that if the user filter returns
multiple lines, only one line at a time is returned.
Rename the variable len to status, as it is the status value.

p4raw-id: //depot/perl@27819

18 years agoDeep in the bowels of creating new and exciting bugs, I managed to
Nicholas Clark [Sat, 15 Apr 2006 19:17:51 +0000 (19:17 +0000)]
Deep in the bowels of creating new and exciting bugs, I managed to
segfault the uninitialised value reporting code. This protects against
the segfault.

p4raw-id: //depot/perl@27818

18 years ago$foo .= $bar doesn't warn if $foo is undefined, so simplify code.
Nicholas Clark [Sat, 15 Apr 2006 18:08:04 +0000 (18:08 +0000)]
$foo .= $bar doesn't warn if $foo is undefined, so simplify code.

p4raw-id: //depot/perl@27817

18 years agoIf the downstream caller wants block mode, and we're in line mode,
Nicholas Clark [Sat, 15 Apr 2006 18:05:12 +0000 (18:05 +0000)]
If the downstream caller wants block mode, and we're in line mode,
then don't return more bytes than they asked for. Hold bytes over
until next time if necessary.

p4raw-id: //depot/perl@27816

18 years agoEliminate the filter_child_proc hack from pp_require.
Nicholas Clark [Sat, 15 Apr 2006 17:00:54 +0000 (17:00 +0000)]
Eliminate the filter_child_proc hack from pp_require.

p4raw-id: //depot/perl@27815

18 years agoIf you return void from a filter subroutine, the caller's status is
Nicholas Clark [Sat, 15 Apr 2006 16:43:22 +0000 (16:43 +0000)]
If you return void from a filter subroutine, the caller's status is
used. If not, your last statement is the return value, and if it keeps
being +ve you'll never hit EOF.
The probably should be a sanity check for this in toke.c, but I'm not
sure how.

p4raw-id: //depot/perl@27814

18 years agoTests for having multiple pipes open simultaneously.
Nicholas Clark [Sat, 15 Apr 2006 16:42:23 +0000 (16:42 +0000)]
Tests for having multiple pipes open simultaneously.
(See comment added in change 3771 about this apparently being buggy)

p4raw-id: //depot/perl@27813

18 years agoAdd more tests for the builtin source filter implementation, and fix
Nicholas Clark [Sat, 15 Apr 2006 13:45:13 +0000 (13:45 +0000)]
Add more tests for the builtin source filter implementation, and fix
two bugs - it would loop infinitely if data were already in the read
buffer, and it would process those data twice.

p4raw-id: //depot/perl@27812

18 years agoAdd a test for source filters returned from code references in @INC.
Nicholas Clark [Sat, 15 Apr 2006 11:59:26 +0000 (11:59 +0000)]
Add a test for source filters returned from code references in @INC.

p4raw-id: //depot/perl@27811

18 years agoBump the expect file count in readdir.t. We keep writing more tests.
Nicholas Clark [Sat, 15 Apr 2006 11:22:29 +0000 (11:22 +0000)]
Bump the expect file count in readdir.t. We keep writing more tests.

p4raw-id: //depot/perl@27810

18 years agoperlio.c: layer data might be allocated and unused (Coverity)
Jarkko Hietaniemi [Sat, 15 Apr 2006 11:24:17 +0000 (14:24 +0300)]
perlio.c: layer data might be allocated and unused (Coverity)
Message-Id: <20060415082417.24F0A6D08C@ugli.hut.fi>

(with a correction)

p4raw-id: //depot/perl@27809

18 years agoFix bug in prime_env_iter where the terms of a comparison were reversed
juna [Fri, 24 Mar 2006 13:52:41 +0000 (05:52 -0800)]
Fix bug in prime_env_iter where the terms of a comparison were reversed
so we thought we didn't have a logical name table when we did.  Reported as:
Subject: LWP::Simple crashes on VMSperl
From: "juna" <ggl.20.jj...@spamgourmet.com>
Newsgroups: comp.os.vms,comp.lang.perl.misc
Message-ID: <1143237161.931669.48370@t31g2000cwb.googlegroups.com>

p4raw-id: //depot/perl@27808

18 years agoHonor READALL privilege in cando_by_name (from Scott
Craig A. Berry [Sat, 15 Apr 2006 00:45:26 +0000 (00:45 +0000)]
Honor READALL privilege in cando_by_name (from Scott
Lepage of HP OpenVMS Engineering)

p4raw-id: //depot/perl@27807

18 years agoDon't die after SS$_NOPRIV in Perl_vmssetenv, courtesy
Craig A. Berry [Sat, 15 Apr 2006 00:42:41 +0000 (00:42 +0000)]
Don't die after SS$_NOPRIV in Perl_vmssetenv, courtesy
of Scott Lepage at HP.

p4raw-id: //depot/perl@27806

18 years agoChange SAVECOPWARNINGS(c) to SAVECOMPILEWARNINGS() - it's only used to
Nicholas Clark [Fri, 14 Apr 2006 20:44:27 +0000 (20:44 +0000)]
Change SAVECOPWARNINGS(c) to SAVECOMPILEWARNINGS() - it's only used to
save the warnings on PL_compiling, so constraining its use to what we
can test seems to make sense. Particularly as testing Perl_ss_dup is
tricky.

p4raw-id: //depot/perl@27805

18 years agoIn the description of require, clarify the file handle return and why
Nicholas Clark [Fri, 14 Apr 2006 19:44:34 +0000 (19:44 +0000)]
In the description of require, clarify the file handle return and why
C<INC> must be qualified.

p4raw-id: //depot/perl@27804

18 years ago S_glob_2inpuv() did not check if lenp was NULL. Oops.
Nicholas Clark [Fri, 14 Apr 2006 16:43:03 +0000 (16:43 +0000)]
 S_glob_2inpuv() did not check if lenp was NULL. Oops.

p4raw-id: //depot/perl@27803

18 years agoReplace explict "/dev/null" with BIT_BUCKET, which varies by platform.
Nicholas Clark [Fri, 14 Apr 2006 16:18:30 +0000 (16:18 +0000)]
Replace explict "/dev/null" with BIT_BUCKET, which varies by platform.

p4raw-id: //depot/perl@27802

18 years agodoop.c: (Coverity) found a bug but not quite what Coverity thought it did (try valgri...
Jarkko Hietaniemi [Thu, 13 Apr 2006 19:20:46 +0000 (22:20 +0300)]
doop.c: (Coverity) found a bug but not quite what Coverity thought it did (try valgrind on the new bop.t without the doop.c patch)
Message-Id: <20060413162046.5F9636D08C@ugli.hut.fi>

p4raw-id: //depot/perl@27801

18 years agoMark new_warnings_bitfield as XE, and add it to __DATA__ in makedef.pl
Nicholas Clark [Fri, 14 Apr 2006 14:45:04 +0000 (14:45 +0000)]
Mark new_warnings_bitfield as XE, and add it to __DATA__ in makedef.pl
Remove a reference to the deleted function Perl_refcounted_he_dup.

p4raw-id: //depot/perl@27800

18 years agoIO::Compress::*
Paul Marquess [Fri, 14 Apr 2006 09:05:39 +0000 (10:05 +0100)]
IO::Compress::*
Message-ID: <004f01c65f9a$3871eb30$2405140a@myopwv.com>

p4raw-id: //depot/perl@27799

18 years agoperlio.c: (Coverity) eliminate temp ptr that confuses Coverity into thinking there...
Jarkko Hietaniemi [Fri, 14 Apr 2006 11:56:44 +0000 (14:56 +0300)]
perlio.c: (Coverity) eliminate temp ptr that confuses Coverity into thinking there is a resource leak
Message-Id: <20060414085644.94A076D08C@ugli.hut.fi>
Date: Fri, 14 Apr 2006 11:56:44 +0300 (EEST)

p4raw-id: //depot/perl@27798

18 years agoReverting change #27791 which may cause corruption addition corruption
Steve Peters [Fri, 14 Apr 2006 11:26:59 +0000 (11:26 +0000)]
Reverting change #27791 which may cause corruption addition corruption
within a regular expression.
p4raw-link: @27791 on //depot/perl: 4ae2f9814731932908f61ce4a79c6da6063584e7

p4raw-id: //depot/perl@27797

18 years agoFix implementation of threads->_handle on unixes.
Jerry D. Hedden [Tue, 4 Apr 2006 09:25:20 +0000 (02:25 -0700)]
Fix implementation of threads->_handle on unixes.
See :
Subject: RE: [PATCH] 2nd patch to sync blead 'threads' with CPAN [REPOST]
From: "Jerry D. Hedden" <jerry@hedden.us>
Message-ID: <20060404092520.fb30e530d17747c2b054d625b8945d88.4a8a6b16c9.wbe@email.email.secureserver.net>

p4raw-id: //depot/perl@27796

18 years ago(Hopefully) fix coredumps in ByteLoader, which were a side effect of
Nicholas Clark [Thu, 13 Apr 2006 21:59:52 +0000 (21:59 +0000)]
(Hopefully) fix coredumps in ByteLoader, which were a side effect of
fixing a bug in B, and non-robust autogenerated code. When
autogenerating initialiser statements for an array, it's a bad plan to
have the size of that array hard coded.

p4raw-id: //depot/perl@27795

18 years agoeliminate PL_regbol PL_regtill PL_regnarrate PL_reg_ganch PL_reg_sv
Dave Mitchell [Thu, 13 Apr 2006 18:31:54 +0000 (18:31 +0000)]
eliminate PL_regbol PL_regtill PL_regnarrate PL_reg_ganch PL_reg_sv
(only another 434 to go ...)

p4raw-id: //depot/perl@27794

18 years agodisable 'split /(?{ split "" })/' test until recursive split is fixed
Dave Mitchell [Thu, 13 Apr 2006 17:16:41 +0000 (17:16 +0000)]
disable 'split /(?{ split "" })/' test until recursive split is fixed

p4raw-id: //depot/perl@27793

18 years agoRemove SAVEt_FREESHAREDPV, as nothing is using it, and it isn't catered
Nicholas Clark [Thu, 13 Apr 2006 16:14:23 +0000 (16:14 +0000)]
Remove SAVEt_FREESHAREDPV, as nothing is using it, and it isn't catered
for in Perl_ss_dup, hence nothing is testing it and nothing will alert
us if it breaks.

p4raw-id: //depot/perl@27792

18 years agoAdd another NULL check thanks to Coverity.
Steve Peters [Thu, 13 Apr 2006 15:08:04 +0000 (15:08 +0000)]
Add another NULL check thanks to Coverity.

p4raw-id: //depot/perl@27791

18 years agoFor duping SAVEHINTS it rather helps if you pay attention to what is
Nicholas Clark [Thu, 13 Apr 2006 14:14:57 +0000 (14:14 +0000)]
For duping SAVEHINTS it rather helps if you pay attention to what is
actually being pushed onto the save stack.

p4raw-id: //depot/perl@27790

18 years agoregexec.c: (Coverity) add NULL check
Jarkko Hietaniemi [Thu, 13 Apr 2006 15:52:15 +0000 (18:52 +0300)]
regexec.c: (Coverity) add NULL check
Message-Id: <200604131252.k3DCqFUL497781@kosh.hut.fi>
Date: Thu, 13 Apr 2006 15:52:15 +0300 (EEST)

p4raw-id: //depot/perl@27789

18 years agoregexec.c: (Coverity) move NULL check even earlier
Jarkko Hietaniemi [Thu, 13 Apr 2006 15:39:33 +0000 (18:39 +0300)]
regexec.c: (Coverity) move NULL check even earlier
Message-Id: <200604131239.k3DCdXhe124107@kosh.hut.fi>
Date: Thu, 13 Apr 2006 15:39:33 +0300 (EEST)

p4raw-id: //depot/perl@27788

18 years agoAdd a break; to the end of the SAVEt_COP_WARNINGS case, and don't try
Nicholas Clark [Thu, 13 Apr 2006 13:02:30 +0000 (13:02 +0000)]
Add a break; to the end of the SAVEt_COP_WARNINGS case, and don't try
to dereference cop_hints if it's NULL.

p4raw-id: //depot/perl@27787

18 years agoFix B and ByteLoader to cope with cop_warnings no longer being an SV.
Nicholas Clark [Thu, 13 Apr 2006 12:40:24 +0000 (12:40 +0000)]
Fix B and ByteLoader to cope with cop_warnings no longer being an SV.

p4raw-id: //depot/perl@27786

18 years agoAdd SAVEt_COP_WARNINGS to ss_dup.
Nicholas Clark [Thu, 13 Apr 2006 10:46:32 +0000 (10:46 +0000)]
Add SAVEt_COP_WARNINGS to ss_dup.

p4raw-id: //depot/perl@27785

18 years agoRe: [PATCH] add pTHX_ parameter to new_warnings_bitfield()
Steve Hay [Thu, 13 Apr 2006 10:27:52 +0000 (11:27 +0100)]
Re: [PATCH] add pTHX_ parameter to new_warnings_bitfield()
Message-ID: <443E1998.9090909@uk.radan.com>
Date: Thu, 13 Apr 2006 10:27:52 +0100

p4raw-id: //depot/perl@27784

18 years agoeliminate PL_reg_re
Dave Mitchell [Thu, 13 Apr 2006 02:20:33 +0000 (02:20 +0000)]
eliminate PL_reg_re
(only another 439 to go ...)

p4raw-id: //depot/perl@27783

18 years ago[perl #38906] Regex engine does not release MINMOD
Animator [Wed, 12 Apr 2006 15:27:41 +0000 (08:27 -0700)]
[perl #38906] Regex engine does not release MINMOD
From: "Animator via RT" <perlbug-followup@perl.org>
Message-ID: <rt-3.0.11-38906-132222.3.24032491323436@perl.org>

zero-length minimum matches that failed could leak into a following
maximal match

p4raw-id: //depot/perl@27782

18 years agoD'oh! Don't try to do #ifdefs inside "functions" that are actually
Nicholas Clark [Wed, 12 Apr 2006 23:17:18 +0000 (23:17 +0000)]
D'oh! Don't try to do #ifdefs inside "functions" that are actually
macros.

p4raw-id: //depot/perl@27781

18 years agoAdd tests for all the other types that %^H serialisation is supposed
Nicholas Clark [Wed, 12 Apr 2006 22:49:58 +0000 (22:49 +0000)]
Add tests for all the other types that %^H serialisation is supposed
to support. In the process, found and corrected a bug.
Tests are good, m'kay.

p4raw-id: //depot/perl@27780

18 years agoChange cop_warnings from an SV holding the warnings bitmask to a
Nicholas Clark [Wed, 12 Apr 2006 22:45:12 +0000 (22:45 +0000)]
Change cop_warnings from an SV holding the warnings bitmask to a
directly (shared) malloc()ed buffer holding the warnings bitmask.
This avoids bugs/crashes when the interpreter that created an optree
is freed but the optree remains in use by other interpreters.

p4raw-id: //depot/perl@27779

18 years agoRemove the final recursion path from S_regmatch: (??{...})
Dave Mitchell [Wed, 12 Apr 2006 22:43:03 +0000 (22:43 +0000)]
Remove the final recursion path from S_regmatch:  (??{...})
Also put PUSH/POP_STATE infastructure in place
Also eliminate PL_reg_call_cc
       (only another 440 global vars to go ...)

p4raw-id: //depot/perl@27778

18 years agoTest that we can do embedded 0 bytes in hints.
Nicholas Clark [Wed, 12 Apr 2006 16:18:30 +0000 (16:18 +0000)]
Test that we can do embedded 0 bytes in hints.

p4raw-id: //depot/perl@27777

18 years agoStore cop_hints as a shared structure without using any SVs (on
Nicholas Clark [Wed, 12 Apr 2006 16:01:08 +0000 (16:01 +0000)]
Store cop_hints as a shared structure without using any SVs (on
ithreads).

p4raw-id: //depot/perl@27776

18 years agoRemove Perl_refcounted_he_copy and Perl_refcounted_he_dup.
Nicholas Clark [Wed, 12 Apr 2006 14:14:50 +0000 (14:14 +0000)]
Remove Perl_refcounted_he_copy and Perl_refcounted_he_dup.

p4raw-id: //depot/perl@27775

18 years agoNewxz() can use calloc() rather than malloc(), as the implementation
Nicholas Clark [Wed, 12 Apr 2006 12:31:29 +0000 (12:31 +0000)]
Newxz() can use calloc() rather than malloc(), as the implementation
of calloc() may know that it has fresh pages from the OS, and so
doesn't need to zero them itself. Plus our object code should be
slightly smaller.

p4raw-id: //depot/perl@27774

18 years agoAs OPs are shared between threads, they should be using
Nicholas Clark [Wed, 12 Apr 2006 12:01:38 +0000 (12:01 +0000)]
As OPs are shared between threads, they should be using
PerlMemShared_*alloc functions, rather than per-thread *alloc()s.

p4raw-id: //depot/perl@27773

18 years agoregexec.c: move NULL check earlier to make Coverity happier
Jarkko Hietaniemi [Tue, 11 Apr 2006 23:04:48 +0000 (02:04 +0300)]
regexec.c: move NULL check earlier to make Coverity happier
Message-Id: <200604112004.k3BK4mV3097400@kosh.hut.fi>
Date: Tue, 11 Apr 2006 23:04:48 +0300 (EEST)

p4raw-id: //depot/perl@27772

18 years agoregcomp.c (try II): use &PL_sv_undef for listsv as suggested by Nick
Jarkko Hietaniemi [Tue, 11 Apr 2006 23:53:25 +0000 (02:53 +0300)]
regcomp.c (try II): use &PL_sv_undef for listsv as suggested by Nick
Message-Id: <200604112053.k3BKrPgk310001@kosh.hut.fi>
Date: Tue, 11 Apr 2006 23:53:25 +0300 (EEST)

p4raw-id: //depot/perl@27771

18 years agoperlio.c: false Coverity finding (it cannot see that two pointers are the same):...
Jarkko Hietaniemi [Tue, 11 Apr 2006 23:39:32 +0000 (02:39 +0300)]
perlio.c: false Coverity finding (it cannot see that two pointers are the same): but help Coverity by removing the temp ptr
Message-Id: <200604112039.k3BKdWix334525@kosh.hut.fi>
Date: Tue, 11 Apr 2006 23:39:32 +0300 (EEST)

p4raw-id: //depot/perl@27770

18 years agolocale.c: more Safefree() (Coverity finding)
Jarkko Hietaniemi [Tue, 11 Apr 2006 22:08:40 +0000 (01:08 +0300)]
locale.c: more Safefree() (Coverity finding)
Message-Id: <200604111908.k3BJ8ewn030950@kosh.hut.fi>
Date: Tue, 11 Apr 2006 22:08:40 +0300 (EEST)

p4raw-id: //depot/perl@27769

18 years agoFirst stab at using the pad to store the serialised hints data.
Nicholas Clark [Tue, 11 Apr 2006 19:26:48 +0000 (19:26 +0000)]
First stab at using the pad to store the serialised hints data.
This approach is almost certainly not only wrong, but also doomed.
But it's needed to build a correct solution.

p4raw-id: //depot/perl@27768

18 years agoWithin Perl_newSVhek, inline most of newSVpvn_share(), because
Nicholas Clark [Tue, 11 Apr 2006 18:06:30 +0000 (18:06 +0000)]
Within Perl_newSVhek, inline most of newSVpvn_share(), because
share_hek_hek() is far more efficient than sharepvn().

p4raw-id: //depot/perl@27767

18 years agoStop Perl_newSVpvn_share() potentially leaking the return result from
Nicholas Clark [Tue, 11 Apr 2006 16:17:13 +0000 (16:17 +0000)]
Stop Perl_newSVpvn_share() potentially leaking the return result from
bytes_from_utf8().

p4raw-id: //depot/perl@27766

18 years agoNeed to migrate the refcounted_he structure to be properly shared.
Nicholas Clark [Tue, 11 Apr 2006 13:47:05 +0000 (13:47 +0000)]
Need to migrate the refcounted_he structure to be properly shared.
Add a mutex for manipulated their reference counts.
Unwrap the structure, so that for ithreads it can store SVs in pads.

p4raw-id: //depot/perl@27764

18 years agoQuiet a coverity problem
Andy Lester [Mon, 10 Apr 2006 23:51:50 +0000 (18:51 -0500)]
Quiet a coverity problem
Message-ID: <20060411045150.GA1422@petdance.com>

p4raw-id: //depot/perl@27763

18 years agoAll S_dumpuntil()'s regnode pointer arguments can be const.
Nicholas Clark [Mon, 10 Apr 2006 19:55:49 +0000 (19:55 +0000)]
All S_dumpuntil()'s regnode pointer arguments can be const.

p4raw-id: //depot/perl@27762

18 years agoPerl_unsharepvn() was no longer being used in core, and changes to
Nicholas Clark [Mon, 10 Apr 2006 17:48:04 +0000 (17:48 +0000)]
Perl_unsharepvn() was no longer being used in core, and changes to
S_unshare_hek_or_pvn() had broken it. Now fixed and tested.

p4raw-id: //depot/perl@27761

18 years agoconfig_H being the last part of my mkglossary work
H.Merijn Brand [Mon, 10 Apr 2006 16:35:30 +0000 (16:35 +0000)]
config_H being the last part of my mkglossary work

p4raw-id: //depot/perl@27760

18 years agoRegeneration of Glossary and the underlying tools.
H.Merijn Brand [Mon, 10 Apr 2006 16:14:32 +0000 (16:14 +0000)]
Regeneration of Glossary and the underlying tools.

p4raw-id: //depot/perl@27758

18 years agoFix coverity warning in utf8.c
Andy Dougherty [Mon, 10 Apr 2006 11:18:35 +0000 (07:18 -0400)]
Fix coverity warning in utf8.c
Message-ID: <Pine.SOC.4.62.0604101117450.22851@maxwell.phys.lafayette.edu>

p4raw-id: //depot/perl@27757

18 years agopp_sys.c: some Coverity findings: NULL guards for format cv
Jarkko Hietaniemi [Sat, 8 Apr 2006 18:55:41 +0000 (21:55 +0300)]
pp_sys.c: some Coverity findings: NULL guards for format cv
Message-Id: <20060408155541.46B796D08C@ugli.hut.fi>
Date: Sat,  8 Apr 2006 18:55:41 +0300 (EEST)

p4raw-id: //depot/perl@27756

18 years agopp_sys.c: some Coverity findings: NULL guards for io pointers
Jarkko Hietaniemi [Sat, 8 Apr 2006 18:52:32 +0000 (21:52 +0300)]
pp_sys.c: some Coverity findings: NULL guards for io pointers
Message-Id: <20060408155232.4C9726D08C@ugli.hut.fi>
Date: Sat,  8 Apr 2006 18:52:32 +0300 (EEST)

p4raw-id: //depot/perl@27755

18 years agoes: quiet some warnings (with a free AIX cpp insanity avoidance tip)
Jarkko Hietaniemi [Sat, 8 Apr 2006 09:58:43 +0000 (12:58 +0300)]
es: quiet some warnings (with a free AIX cpp insanity avoidance tip)
Message-ID: <44375F23.6030900@gmail.com>
Date: Sat, 08 Apr 2006 09:58:43 +0300

p4raw-id: //depot/perl@27754

18 years agoTrue consting goodness in regexes
Andy Lester [Mon, 10 Apr 2006 02:15:58 +0000 (21:15 -0500)]
True consting goodness in regexes
Message-Id:  <20060410071558.GA24756@petdance.com>

p4raw-id: //depot/perl@27753

18 years agoFix pointer error in change 27741, spotted by John E. Malmberg.
Nicholas Clark [Sun, 9 Apr 2006 21:07:48 +0000 (21:07 +0000)]
Fix pointer error in change 27741, spotted by John E. Malmberg.

p4raw-id: //depot/perl@27752

18 years agoRe: [PATCH] perlio.c: Coverity finding: finding false (Coverity notable to follow...
Jarkko Hietaniemi [Sun, 9 Apr 2006 10:18:52 +0000 (13:18 +0300)]
Re: [PATCH] perlio.c: Coverity finding: finding false (Coverity notable to follow vtable logic) but adding an assert
Message-ID: <4438B55C.9010604@gmail.com>

p4raw-id: //depot/perl@27751

18 years agoRe: [PATCH] locale.c: Coverity finding
Jarkko Hietaniemi [Sun, 9 Apr 2006 10:31:32 +0000 (13:31 +0300)]
Re: [PATCH] locale.c: Coverity finding
Message-ID: <4438B854.6040301@gmail.com>

p4raw-id: //depot/perl@27750

18 years agoRename variables in some mg_* funcs
Andy Lester [Sun, 9 Apr 2006 00:20:12 +0000 (19:20 -0500)]
Rename variables in some mg_* funcs
Message-ID: <20060409052012.GA15887@petdance.com>

p4raw-id: //depot/perl@27749

18 years agofix potential null deref introduced by change #27716
Dave Mitchell [Sat, 8 Apr 2006 23:58:51 +0000 (23:58 +0000)]
fix potential null deref introduced by change #27716
p4raw-link: @27716 on //depot/perl: 4f639d21b5c9a079a204ea1a0168f3c1a4ed5214

p4raw-id: //depot/perl@27746

18 years agoperlio.c: Coverity finding: finding false (Coverity not able to follow vtable logic...
Jarkko Hietaniemi [Sat, 8 Apr 2006 19:11:36 +0000 (22:11 +0300)]
perlio.c: Coverity finding: finding false (Coverity not able to follow vtable logic) but adding an assert
Message-Id: <20060408161136.CEAC86D08C@ugli.hut.fi>
Date: Sat,  8 Apr 2006 19:11:36 +0300 (EEST)

p4raw-id: //depot/perl@27745

18 years agosv.c, rs.t, perlvar.pod (Coverity finding: did you know what happens with $/=\0?)
Jarkko Hietaniemi [Sat, 8 Apr 2006 18:25:33 +0000 (21:25 +0300)]
sv.c, rs.t, perlvar.pod (Coverity finding: did you know what happens with $/=\0?)
Message-Id: <20060408152533.C4D5F6D08C@ugli.hut.fi>

(although I should add that this version of Coverity is actually
raising a false positive here, albeit something still interesting)

p4raw-id: //depot/perl@27744

18 years agoAs av_dup, gv_dup and hv_dup are the same as sv_dup, code in various
Nicholas Clark [Sat, 8 Apr 2006 15:14:13 +0000 (15:14 +0000)]
As av_dup, gv_dup and hv_dup are the same as sv_dup, code in various
branches of Perl_ss_dup() is actually duplicated, so can be merged.

p4raw-id: //depot/perl@27741

18 years agoBy swapping the order of pushes onto the save stack for
Nicholas Clark [Sat, 8 Apr 2006 14:46:53 +0000 (14:46 +0000)]
By swapping the order of pushes onto the save stack for
SAVEt_GENERIC_PVREF, we can merge it with SAVEt_PPTR in Perl_ss_dup().

p4raw-id: //depot/perl@27740

18 years agoTeach ss_dup about SAVEt_RE_STATE. (As correctly as it ever was before)
Nicholas Clark [Sat, 8 Apr 2006 13:43:46 +0000 (13:43 +0000)]
Teach ss_dup about SAVEt_RE_STATE. (As correctly as it ever was before)

p4raw-id: //depot/perl@27739

18 years agoss_dup of SAVEt_COP_ARYBASE can use the same code as SAVEt_I8.
Nicholas Clark [Sat, 8 Apr 2006 12:50:13 +0000 (12:50 +0000)]
ss_dup of SAVEt_COP_ARYBASE can use the same code as SAVEt_I8.

p4raw-id: //depot/perl@27738