October 05, 2016 [phobos] [dlang/phobos] ebbdf2: fix Issue 16580 - spawnShell segfaults on macOS | ||||
---|---|---|---|---|
| ||||
Attachments:
| Branch: refs/heads/stable Home: https://github.com/dlang/phobos Commit: ebbdf21a7ebc6730a3d5f170b934143bdb18a414 https://github.com/dlang/phobos/commit/ebbdf21a7ebc6730a3d5f170b934143bdb18a414 Author: Martin Nowak <code@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@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@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 |
Copyright © 1999-2021 by the D Language Foundation