| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Warning: Use of "defined" without parentheses is ambiguous at t/cwd_enoent.t line 32.
Search pattern not terminated at t/cwd_enoent.t line 32.
|
|
|
| |
Add `my` to examples for better practice.
|
|
|
|
| |
real module version
|
|
|
|
|
|
|
|
| |
v5.37.1-202-g0d6ab5e425 just added a version check for dragonfly;
however, it generates sprintf warnings unless the OS's version has
exactly two numeric components.
The fix is trivial.
|
|
|
|
|
|
|
|
| |
See:
https://www.dragonflybsd.org/releases/changelog/62/
which lists ticket 3250.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes the following warning on illumos based platforms:
Cwd.xs:27:0: warning: "SYSNAME" redefined
#define SYSNAME "$SYSNAME"
In file included from ../../perl.h:1111:0,
from Cwd.xs:8:
/usr/include/sys/param.h:184:0: note: this is the location of the previous definition
#define SYSNAME 9 /* # chars in system name */
|
| |
|
|
|
|
|
|
|
|
|
|
| |
forbidden under taint""
This reverts commit 9eb153ffbbde62558146e8f9b837034f42878e13.
The patch this unreverts was accidentally pushed to blead without going
through PR or smoke process which it really needs. This patch exists so
it can go through that process.
|
|
|
|
|
|
|
|
| |
This reverts commit 79311730f400cc7f546ab72f6dbb22fddb27856d.
The original patch was accidentally pushed to blead directly without
going through a PR or smoke process which it needs. This is the revert
of that revert so that process can begin.
|
|
|
|
|
|
|
| |
This reverts commit 33349b53c2e4df3292c79435e54fc98824e4cba8.
This should have been pushed to a branch not to blead. Fat fingers.
Sorry folks.
|
|
|
|
|
|
|
|
|
|
| |
under taint"
This reverts commit 5ede4453c4877110eb5214ff400c173210b101b1.
I messed up and pushed it to blead not to the PR branch I meant to push
it. Thanks to xenu for noticing. This needs a smoke before it should be
applied.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Having a relative path, including ".", is forbidden under taint. On *nix
an empty PATH or an empty PATH component is equivalent to a PATH of ".",
so they should be forbidden as well.
Note that on Windows the current working directory is ALWAYS checked
first if you try to execute something that does not specify its path,
regardless of the PATH.
I do not know what happens on VMS and I do not have access to a
VMS environment to test. There are totally different codepaths for
VMS as well. This patch does not (or rather should not) change
behavior for VMS.
Note this includes a version bump for all modules in dist/PathTools
|
|
|
|
| |
Versions 3.82 through 3.84 were not document in Changes.
|
| |
|
|
|
|
|
|
|
| |
Unlist Ken Williams as maintainer as requested in
https://rt.cpan.org/Public/Bug/Display.html?id=116342
For: https://github.com/Perl/perl5/pull/19261
|
|
|
|
|
| |
Mail to 'perlbug@perl.org' now simply triggers a response redirecting
sender there.
|
|
|
|
| |
Haiku
|
|
|
|
|
| |
This would produce a warning if we fallback to using getcwd() where
getcwd() has a prototype.
|
|
|
|
|
|
|
|
|
| |
When _backtick_pwd invokes $pwd_cmd it first clears the PATH, and since
the command has no shell metacharacters, it perl won't invoke the
shell, so it will always fail.
An alternative here might be to use "/bin/sh -c pwd" but there's no
guarantee that pwd is available as a shell builtin.
|
|
|
|
|
| |
We deliberately clear PATH when invoking pwd, so this search is
useless.
|
| |
|
| |
|
|
|
|
| |
as recommended in perldoc -f stat
|
| |
|
|
|
|
|
|
|
|
|
| |
Use PerlLIO_lstat() and PerlLIO_readlink() instead of directly calling
the POSIX names, so our Win32 overrides work.
For the test, unlike POSIX, changing directory via a symlink on Win32
appears to store the symlink as part of the current directory rather
so GetCurrentDirectory() fetches that rather than the hardlinked path.
|
|
|
|
|
|
|
|
| |
There are a number of files excluded using gitignore rules that are
included in the repository. This can lead to confusion if something
other than git tries to read the ignore files.
Add rules to the gitignore files so that these files won't be ignored.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At the heart of this function is a loop which repeatedly finds the next
component in the path, processes it, then chops that component off the
front of the path by shifting the string to the start of the buffer;
i.e. something like:
while (remaining_len) {
s = strchr(remaining, '/')
...
remaining_len -= s - remaining;
memmove(remaining, s, remaining_len + 1);
}
The problem is that the per-iteration decrement to remaining_len doesn't
take account of the '/' character, so each iteration, remaining_len gets
one more byte too big.
It turns out that this is harmless - it just means that more and more
garbage characters after the trailing null byte get copied each time,
but after each copy the path string is still well formed, with a
trailing null in the right place. So just the random garbage after the
null byte is different.
This commit fixes that.
Although really, it would be better to just increment the
start-of-string pointer each time rather than shift the whole string
each time.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Apparently this was a command.com thing that Win32 doesn't support.
|
| |
|
| |
|
|
|
|
|
|
| |
ESTALE may occur in some environments when accessing a
now non-existing directory, e.g. when using NFS or in docker
containers.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mkpath can be called multiple ways, but most aren't supported by very
old versions of File::Path. A prerequisite could be added on a newer
version of the module that that supports the new call signature, but
this introduces a circular dependency. While theoretically this
dependency should be resolvable, since the File::Spec prereq listed in
File::Path is version 0, some toolchains (in particular older CPAN.pm)
will fail to do so.
There isn't any particular advantage to using the new call signature, so
a simple solution is to adjust the test to use the older style.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These changes are towards a goal of removing mkppport one day as part of
a optimization for parallel building (less deps needed before XS
extensions are built). This is a follow-on patch to the dummy ppport.h
trick in Perl #128438 ticket that had issues.
-for Time::HiRes the DEFINE() in Makefile.PL can't be be in sub init()
because that sub isn't called on windows
-SLU has not needed ppport.h in core since commit 5e99e069f5
aka 1.47 import from cpan
-Cwd used to be a no ppport.h since 3.25, in 3.30_02 the code (Cwd.xs) was
deleted/broken under commit 9bc94e3dae, or changes file
"Remove more special logic required for core perl.". Put back the Cwd.xs
code and remove Cwd from the ppport.h list
|
|
|
|
|
|
|
|
|
| |
Tux reported that on certain platforms File::Temp::tempdir(CLEANUP => 1) was
not cleaning up after itself properly. Guarantee that this cleanup takes
place in and END block.
Thread:
https://www.nntp.perl.org/group/perl.perl5.porters/2018/04/msg250757.html
|
|
|
|
|
|
|
| |
Until it's fixed upstream, we should skip tests that don't expect
this behaviour.
[RT #133141]
|
|
|
|
|
| |
So that new releases will have a more complete and helpful
change log.
|
|
|
|
|
|
|
|
| |
There were permission errors when uploading 3.73 so we are bumping
it to 3.74.
I've included the META.json and META.yml files in the dist and
corrected their entry in MANIFEST.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Building towards an upcoming release of PathTools, I'm documenting
based on the commits what I think is the correct Changeset.
Considering that at the time of this commit, CPAN only has
PathTools 3.62, I think we should be fine.
Correct if you see a mistake. :)
|
|
|
|
|
|
|
| |
ppport.h nowadays defines croak_xs_usage(), which is of course used
in the XS code, but its definition is broken unless the flag macro
NEED_croak_xs_usage was defined first. Define the flag macro to avoid
breakage.
|
|
|
|
|
|
|
|
|
| |
Add them conditionally so that CPAN PathTools can accommodate different
versions of ExtUtils::MakeMaker and CPAN metadata protocols.
Styled after Module-CoreList's Makefile.PL for better readability.
See: RT 132853
|
| |
|