11 Commits

Author SHA1 Message Date
Sun He
fdc854f20e modules/RM_OpenKey: avoid decrRefCount obj twice 2016-05-10 06:40:06 +02:00
Sun He
bf1a285e5b modules/RM_StringSet: set key->value 2016-05-10 06:40:06 +02:00
Sun He
9cf8b07b93 modules: correct protolen 2016-05-10 06:40:06 +02:00
antirez
b7d1c9655a Add the last break for consistency in moduleCreateCallReplyFromProto. 2016-05-10 06:40:06 +02:00
Dvir Volk
beb69e1c42 fixed case in moduleCreateCallReplyFromProto 2016-05-10 06:40:06 +02:00
Dvir Volk
e5058b25f9 renamed RedisModule_ReplyWithNull to RM_ReplyWithNull to fix compilation 2016-05-10 06:40:06 +02:00
antirez
73c12d9faa Modules: RedisModule_ReplyWithNull() implemented. 2016-05-10 06:40:06 +02:00
Yossi Gottlieb
33da1d0ac1 Log loadmodule dlopen() errors. 2016-05-10 06:40:06 +02:00
antirez
b72253dd51 Modules: avoid conflict between modules func pointers and dynamic symbols.
In modules we fill a set of function pointers defined in redismodule.h,
populating a set of APIs that are callable from the module. We use this
manual process instead of resorting to dynamic linking so that we have
exact control on how we pass the API to the module, and we can even pass
different functions for the same name, depending on the API version
declared by the module.

However if the function pointers in redismodule.h and the functions
defined in module.c have the same name, they conflict since the core
exports the symbols to the module.

There is probably some compiler flags trick to avoid this, but in order
to be safer in the future and be more easily compatible with different
builidng systems, this commit changes the internal function prefix from
RedisModule_ to RM_, so for example:

    RM_StringSet() will be exported as RedisModule_StringSet()
2016-05-10 06:40:05 +02:00
antirez
bceb78814d Modules: remove warnings due to void/function pointer conversion. 2016-05-10 06:40:05 +02:00
antirez
83fe739fb6 Modules: first preview 31 March 2016. 2016-05-10 06:40:05 +02:00