| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This removes a lot of copy-paste code.
[with a tweak by Ilmari that removed residual duplication]
|
| |
|
|
|
|
|
|
| |
Using ALIAS to merge POSIX::sig{pending,suspend} and
POSIX::tc{flow,flush,sendbreak} reduces the size of POSIX.so by about 2K
on this platform.
|
|
|
|
|
|
| |
Using ALIAS to merge cfget[io]speed(), get[cloi]flag(), cfset[io]speed()
and set[cloi]flag() reduces the size of POSIX.so by almost 2K on this
platform.
|
|
|
|
|
|
| |
Using ALIAS to merge addset() with delset() and emptyset() with fillset()
reduces the shared object size, by removing duplicate marshaling code for
arguments and return values. On this platform the saving is over .5K
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously POSIX::SigSet was using the PTROBJ typemap to store a pointer to
a dynamically-allocated sigset_t as an IV (blessed into the class)
This requires an explicit DESTROY to free the dynamic allocation, but fails
badly if any POSIX::SigSet objects exist at ithread clone time, as the
dynamic allocation is not duplicated in the new thread. (DESTROY is called
in both threads, free-from-wrong pool or other jollity occurs.)
Removing dynamic allocation removes the need for a DESTROY method.
This change is analogous to the previous change in POSIX::Termios, and is
made for the same reason.
|
|
|
|
|
| |
The same code will be needed for POSIX::SigSet::new(), so share it as a small
static function.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously POSIX::Termios was using the PTROBJ typemap to store a pointer to
a dynamically-allocated struct termios as an IV (blessed into the class).
This requires an explicit DESTROY to free the dynamic allocation, but fails
badly if any POSIX::Termios objects exist at ithread clone time, as the
dynamic allocation is not duplicated in the new thread. (DESTROY is called
in both threads, free-from-wrong pool or other jollity occurs.)
Removing dynamic allocation removes the need for a DESTROY method.
This introduces a new OPAQUEPTROBJ typemap, but currently doesn't use the
OUTPUT section, as that copies an existing structure, whereas
POSIX::Termios->new() only needs to zero-allocate the right space. Assuming
that this typemap should be of general applicability, it should be moved to
the main typemap file.
|
|
|
|
|
|
| |
We don't want to mess with the user's terminal (as we might mess it up), so
attempt to call each function on a disk file, and verify that it fails with
ENOTTY.
|
|
|
|
|
|
| |
We don't want to mess with the user's terminal (as we might mess it up), so
attempt to call tcsetattr() on a disk file, and verify that it fails with
ENOTTY.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
If no terminal devices are found, or getattr() fails on all of them, then
the struct termios wrapped by the POSIX:Termios object will consist of
initialised memory. In this case, it's not possible to use getcc() or the
other get*() methods on it.
Try harder to find a terminal device - as well as STDIN, STDOUT and STDERR
also try to open the controlling terminal directly.
|
|
|
|
|
|
|
|
|
|
| |
* Only import termios.h functions and constants from POSIX
* Loop over STDIN, STDOUT, STDERR instead of duplicating code.
* Avoid a needless defined? test, as isa_ok() handles undef.
* Switch to done_testing(), which also allows @getters to be inlined and
eliminated.
* The various get*() methods return integer values, so check this.
* Enable warnings.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 099be4f1d added code to cope with this:
my $x = *STDERR; select($x); $x = 1;
which would cause PL_defoutgv to hold something other than a GV,
resulting in various crashes.
Commit 2acc3314 changed the way rv2gv works on fake globs, and inad-
vertently fixed this problem, too, so PL_defoutgv can no longer end up
holding something other than a GV.
So the code that checks if(isGV_with_GP(PL_defoutgv)) can go.
|
| |
|
|
|
|
|
|
|
|
| |
This is a follow-up to ff55a0191f1, but this bug has probably existed
as long as ties.
\&$tied_scalar was ignoring get-magic on $tied if it happened to
hold a glob.
|
|
|
|
| |
to let porting/diag.t know how it’s listed in perldiag.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
They were ignoring get-magic for those.
A side effect of this fix is that lstat filehandle warnings and errors
are now consistent:
lstat _ used to die if the previous stat was not an lstat, but
lstat *_ and lstat \*_ would happily return what was in the buffer.
Now they die.
lstat FH and \*FH used to warn, but not lstat *FH. Now it does.
See bug #98864.
|
|
|
|
|
|
|
|
| |
[DELTA]
0.004 2011-09-06 09:42:52 America/New_York
- Generated from ADAMK/YAML-Tiny-1.50.tar.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
5.65 Tue Aug 30 2011 Todd Rinaldo
- No changes. Tests clean. Bumping to production release.
5.64_04 Wed Aug 24 2011 Todd Rinaldo
- Re-vamp module to work in Git.
- Update Makefile.PL with extra META bits.
- Point bugs to perl's RT.
- Add a README from Exporter.pm perldoc.
- Depend on Carp 1.05 now we're assuming a fix from 1.05
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
5.0150034 Mon 12 Sep 2011 18:41:25 +0100
* Copy edit Perl 6 a bit more (ranguard)
* Add blog section (ranguard)
* Update much of the copy about emails in perlfaq9 (apeiron)
* Many small changes (bigpresh)
* Add descriptions to doc list (bigpresh)
* Start moving away from global file handles (shlomif)
* Typos, clarity and other cleanups (shlomif)
* Cleanup copy (ranguard)
* Start to add "my" to variables (shlomif)
* Remove verbose/history copy (ranguard)
* Switch to L<> around URLs (ranguard)
|
|
|
|
| |
by which I mean platforms on which some -X $file ops don’t work.
|
|
|
|
|
|
|
|
|
| |
running cachegrind leaves lots of intermediate files, delete them at
the end. Killing make test leaves them around, but this may be useful
for some debugging purposes.
Rework _find_tests($dir) into _find_files($patt,$dir) and wrapper,
to support existing uses and new one.
|
| |
|
| |
|
|
|
|
|
| |
This also rephrases the "XSUBs are now static" section since the
exact behaviour has changed since 5.15.2.
|
| |
|
| |
|
|
|
|
| |
It was ignoring get-magic for those.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
3.20 - 2011-09-10
* fix CPAN #56749: isASCII and isCNTRL macros are buggy
(thanks to Karl Williamson for providing a patch and patiently
waiting almost two years for me to integrate it)
* fix CPAN #70427: RealPPPort.xs:1587: error: lvalue required as unary ‘&’ operand
3.19_03 - 2011-04-13
* keep up with latest core changes
3.19_02 - 2010-03-07
* fix a warning emitted by the test suite with older perls
* added support for the following API
newSVpvs_share
get_cvn_flags
get_cvs
(thanks to Goro Fuji for providing a patch to
implement all of these, fixes CPAN #47174)
3.19_01 - 2010-02-20
* fix CPAN #50763: mistaken use of $[
(thanks to Zefram for spotting this)
* remove spurious PUSHMARK from Perl_ppaddr_t
(thanks to Gerard Goossen for providing a patch)
* improved support for newer compilers in buildperl.pl
(thanks to Philippe Bruhat (BooK) for providing a patch)
* added support for the following API
memEQs
memNEs
* lots of small toolchain updates
|
| |
|
|
|
|
| |
All supporting code for Windows 95 was already removed in 8cbe99e5b6.
|
|
|
|
|
|
| |
Don't pass parameters that old ExtUtil::MakeMaker doesn't understand.
Ensure that $DynaLoader::dl_debug exists prior to calling into DynaLoader's
XS code.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. I've removed some erroneous code regarding signal names (it doesn't
handle signal aliases) with a reference to a module that does handle
it correctly.
2. Removed the sample on temporary signal ignoring; this is not likely
to do what users want it to do. Possibly this should be replaced by a
discussion on sigprocmask & friends, but perhaps we can skip in
altogether
3. Corrected the discussion on permissions to take the difference
between real, effective and saved UIDs into account.
4. Removed all mention of the SysV signaling issue. This was rather
relevant when perlipc was written 15 years ago but it isn't anymore
nowadays.
5. Removed the suggestion that you can longjmp out of a signal handler
(see CERT's SIG32-C).
|
|
|
|
|
| |
Most Win32 shell environments take no notice of these permissions
anyway, but this seems like a safer option than removing them all.
|
|
|
|
|
|
| |
If ExtUtils::ParseXS emits conditional C pre-processor code once per XS file
to provide a default for dVAR, then it doesn't need to emit 4 lines per
function to cater for dVAR not being present.
|
| |
|
| |
|
|
|
|
| |
It used to ignore get-magic for globs and globrefs.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a regression in 5.14.0.
Commit 6f1401dc made ops call get-magic before overloading, but it
ended up making filetest ops call get-magic on the topmost item of the
stack even if the filetest op was not going to use the stack (which
happens for ‘-r bareword’ and plain ‘-r’).
This would affect cases like:
push @foo, $tied, -r;
|
|
|
|
|
|
| |
This patch uses the recently-added MAYBE_DEREF_GV macro which puts the
glob deref logic in one spot. It also adds _nomg and _flags varia-
tions of it. _flags understands the SV_GMAGIC flag.
|
|
|
|
|
| |
Existence of this entry has nothing to do with Borland support. It
is merely history, that’s all.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
$ ln -s /usr/bin/perl bar
$ perl -le' print "bar", -l foo'
1
The -l ate my bar.
It’s this naughty piece of code in doio.c:Perl_my_lstat_flags that is
the culprit:
if (ckWARN(WARN_IO)) {
Perl_warner(aTHX_ packWARN(WARN_IO), "Use of -l on filehandle %s",
GvENAME(cGVOP_gv));
return (PL_laststatval = -1);
}
When -l is followed by a bareward, it has no argument on the stack,
but the filetest op itself is a gvop. That snippet is from the bare-
word-handling code.
So, if warnings are off, it falls through to the argument-on-the-stack
code and pops off something does not belong to it (that belong to the
print, in the example above).
|
|
|
|
|
|
|
|
| |
[DELTA]
* important changes in version 1.78 08/09/2011
- patch from Rocky Bernstein to add chown() method [rt#70623]
- blead patch from Alexandr Ciornii to resolve [perl#78708]
|