2c8614c639fe5f2d6cc5e74cac6562203eb6a663
Bug 6518 Starting from no plugins loaded, after the final step of the following, basetriggers will be marked as errored because mapchooser is missing: Load basetriggers Load mapchooser Unload mapchooser Load mapchooser Unload mapchooser We lose the SP_NTVFLAG_OPTIONAL when removing a WeakNative. The __pl_mapchooser_SetNTVOptional() is only called in basetriggers when it is loaded. It adds the OPTIONAL flag to the mapchooser natives the basetrigger plugin uses. When mapchooser is loaded, the native is overwritten and the OPTIONAL flag consumed (WeakNative registered), but not preserved. Later when mapchooser is unloaded the WeakNative is removed in CNativeOwner::UnbindWeakRef, but the OPTIONAL flag isn't added again. The next time mapchooser is loaded, the natives aren't optional anymore and will cause a real dependency. The change in ShareSys isn't needed to fix the error, but is included to keep the SP_NTVFLAG_OPTIONAL flag consistent.
SourceMod
General
- SourceMod website: Source Engine scripting and server administration
- Forum: Discussion forum including plugin/extension development
- General documentation: Miscellaneous information about SourceMod
- Latest release: The latest stable SourceMod release
- Build snapshots: Builds of recent development versions
Development
- Issue tracker: Issues that require back and forth communication
- Building SourceMod: Instructions on how to build SourceMod itself using AMBuild
- SourcePawn scripting: SourcePawn examples and introduction to the language
- SourceMod extension development: C++ examples and introduction to various extension interfaces
Languages
C
59.7%
C++
18%
HTML
4.8%
Roff
3.8%
SourcePawn
3.4%
Other
10%