[phobos] [dlang/phobos] ebbdf2: fix Issue 16580 - spawnShell segfaults on macOS
GitHub via phobos
phobos at puremagic.com
Wed Oct 5 09:49:22 PDT 2016
Branch: refs/heads/stable
Home: https://github.com/dlang/phobos
Commit: ebbdf21a7ebc6730a3d5f170b934143bdb18a414
https://github.com/dlang/phobos/commit/ebbdf21a7ebc6730a3d5f170b934143bdb18a414
Author: Martin Nowak <code at dawg.eu>
Date: 2016-10-04 (Tue, 04 Oct 2016)
Changed paths:
M posix.mak
M std/internal/phobosinit.d
A std/internal/processinit.d
M std/process.d
M win32.mak
M win64.mak
Log Message:
-----------
fix Issue 16580 - spawnShell segfaults on macOS
- partially Revert "Merge pull request #4493 from schveiguy/fixcycles2"
- recreate processinit (and import it from std.process)
to call std.process shared ctor w/o creating a cycle
- keep it separate from phobosinit to not drag std.encoding
into any binary using std.process
Commit: 9d73d18c0cd4ecd1bb1ebc8bb01941f209570ca2
https://github.com/dlang/phobos/commit/9d73d18c0cd4ecd1bb1ebc8bb01941f209570ca2
Author: Martin Nowak <code at dawg.eu>
Date: 2016-10-05 (Wed, 05 Oct 2016)
Changed paths:
M posix.mak
M std/encoding.d
A std/internal/encodinginit.d
R std/internal/phobosinit.d
M win32.mak
M win64.mak
Log Message:
-----------
fix Issue 16291 - EncodingScheme.create fails
- add EncodingScheme.register overload that references the registered class
- just adding the FQN name of a class does not reference that class, so
it must not end up in the binary and subsequently EncodingScheme.create failed
- This used to work by chance b/c all the EncodingScheme implementations
were in a module w/ static ctor. Any user of std.encoding did drag in
that ModuleInfo, which in turn referenced all classes of std.encoding.
Since moving the static ctor to std.internal.phobosinit to break a
cycle, the classes were no longer referenced by a ModuleInfo w/ shared
ctor, so they wouldn't end up in the binary unless explicitly
referenced elsewhere.
- deprecate the old EncodingScheme.register(string fqn) b/c relying on
Object.factory is slow, error prone (linkage), and really unnecessary
- import encodinginit in std.encoding so that the
std_encoding_shared_static_this callback actually gets run
Commit: ad739f232ea93f56b9f72920be49d999a2507652
https://github.com/dlang/phobos/commit/ad739f232ea93f56b9f72920be49d999a2507652
Author: Steven Schveighoffer <schveiguy at yahoo.com>
Date: 2016-10-05 (Wed, 05 Oct 2016)
Changed paths:
M posix.mak
M std/encoding.d
A std/internal/encodinginit.d
R std/internal/phobosinit.d
A std/internal/processinit.d
M std/process.d
M win32.mak
M win64.mak
Log Message:
-----------
Merge pull request #4840 from MartinNowak/fix16291
fix Issue 16291 - EncodingScheme.create fails
Compare: https://github.com/dlang/phobos/compare/8006c13644a8...ad739f232ea9
More information about the phobos
mailing list