Branch: refs/heads/blead
Home: https://github.com/Perl/perl5
Commit: bbd7a0f1cf646fc911637b994423f74001e7e69c
https://github.com/Perl/perl5/commit/bbd7a0f1cf646fc911637b994423f74001e7e69c
Author: Lukas Mai <[email protected]>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M doio.c
Log Message:
-----------
doio: fix shmio args assert
PERL_ARGS_ASSERT_DO_SHMIO is equivalent to `assert(mark); assert(sp)`.
There is no point in checking pointers that have already been
dereferenced by previous statements. An optimizing compiler will simply
remove those asserts as no-ops.
Move the asserts up to before any of the function arguments are used.
Commit: 264e158194d8a4c489ee3399b1d4caf6e858818a
https://github.com/Perl/perl5/commit/264e158194d8a4c489ee3399b1d4caf6e858818a
Author: Lukas Mai <[email protected]>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M doio.c
Log Message:
-----------
doio: make do_shmio() work with args beyond I32
- Extend mpos/msize to the full size_t/STRLEN range (whatever that is on
the current platform).
- Fully validate the range of all incoming values, including making sure
that mpos+misze does not overflow (I think you used to be able to
crash perl with this before).
- Assert that the optype is either OP_SHMREAD or OP_SHMWRITE (because the
code blindly performs a shmwrite() if optype is not OP_SHMREAD).
- Switch to Perl_croak_nocontext because why not.
Fixes #22895.
Commit: 7fbd6b3f87b353bb1839b955c98f9e8fa141c0f7
https://github.com/Perl/perl5/commit/7fbd6b3f87b353bb1839b955c98f9e8fa141c0f7
Author: Lukas Mai <[email protected]>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M t/io/shm.t
Log Message:
-----------
t/io/shm.t: test shmwrite beyond the 2GB mark
Guard tests behind PERL_TEST_MEMORY because we're allocating a 2GB
shared mem segment and a 2GB scalar buffer. These tests used to fail (or
crash) before the do_shmio() I32 fixes.
Also fix the error message if the initial shmget fails
("IPC::SharedMem->new" was a copy/paste oversight from when these tests
were copied in from IPC::SysV in 2d5385e000).
Also test that shmwrite() from a tied buffer only calls FETCH once while
we're at it.
Commit: cb62cc5ebe217d9ff52663c145e1281598fea68d
https://github.com/Perl/perl5/commit/cb62cc5ebe217d9ff52663c145e1281598fea68d
Author: Lukas Mai <[email protected]>
Date: 2025-01-09 (Thu, 09 Jan 2025)
Changed paths:
M pod/perldelta.pod
Log Message:
-----------
perldelta for the shmread/shmwrite 31-bit fixes
Compare: https://github.com/Perl/perl5/compare/61bacb933d4c...cb62cc5ebe21
To unsubscribe from these emails, change your notification settings at
https://github.com/Perl/perl5/settings/notifications