e3f4d239f1
In #705 SourceMod received support for x64 binaries. The `IBinTools` interface was updated to call functions in 64bit binaries. The `PassInfo` struct's size was increased and the `Create(V)Call()` functions signatures changed, thus making the interface incompatible for consumers which were compiled against an earlier version. `SMInterface::IsVersionCompatible` wasn't adjusted to that fact, so extensions compiled against pre SM 1.10 could request an `IBinTools` interface pointer, but crash when they try to use it. This change makes requests to older interface versions invalid, thus letting `RequestInterface` return `NULL` for older extensions. It doesn't fix the backwards incompatibility, but at least makes the problem more blatant, so extensions can handle it themselves. |
||
---|---|---|
.github | ||
bridge/include | ||
configs | ||
core | ||
editor | ||
extensions | ||
gamedata | ||
loader | ||
plugins | ||
public | ||
sourcepawn@e8f681fdbf | ||
tools | ||
translations | ||
versionlib | ||
.arcconfig | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
AMBuildScript | ||
changelog.txt | ||
configure.py | ||
product.version | ||
pushbuild.txt | ||
README.md |
SourceMod
General
- SourceMod website: Source Engine scripting and server administration
- Forum: Discussion forum including plugin/extension development
- General documentation: Miscellaneous information about SourceMod
- Stable builds: The latest stable SourceMod releases
- Dev builds: 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 plugin API: Online SourceMod plugin API reference generated from the include files
- SourceMod extension development: C++ examples and introduction to various extension interfaces