- Apr 04, 2021
-
-
Rob Swindell authored
This macro has expanded to nothing for a while now and even before, the usage was misguided and unnecessary as explained in this video: https://www.youtube.com/watch?v=cjotPqQxxAY
-
Rob Swindell authored
CID 33260
-
Rob Swindell authored
This won't impact Synchronet as it has a separate signal handling thread, but we still need to behave properly for processes that don't. I'm also saying that ENOMEM does not indicate a disconnection, though it may be better to pretend it was disconnected...
-
- Feb 22, 2021
-
-
Rob Swindell authored
-
- Aug 16, 2020
-
-
Rob Swindell authored
-
- Apr 20, 2020
-
-
rswindell authored
It appears when this module was created it was copied from js_socket.c and the use of ERROR_VALUE (which is socket-specific on Windows) was not corrected.
-
- May 04, 2019
-
-
rswindell authored
declaration
-
rswindell authored
Use this in place of JS_GetPrivate() in native class methods that need the class instance's private data pointer and will do bad things if that pointer points to something other than what is expected. mcmlxxix (matt) discovered that using Object.apply(), you can invoke class methods where the 'this' instance is a different class. This would result in "Internal Error: No Private Data." or a crash. So now, gracefully detect this condition and report a meaningful error: "'<class-name>' instance: No Private Data or Class Mismatch" Also, important to note: if the method uses JS_THIS_OBJECT to get the JSObject* to pass to JS_Get*Private, then it must do this *before* it calls JS_SET_RVAL. From jsapi.h: * NB: there is an anti-dependency between JS_CALLEE and JS_SET_RVAL: native * methods that may inspect their callee must defer setting their return value * until after any such possible inspection. Otherwise the return value will be * inspected instead of the callee function object. The js_crypt*.c files still need this treatment.
-
- Feb 20, 2018
-
-
rswindell authored
-
rswindell authored
HANDLE_PENDING() contains a return, so it's theoretically possible that the memory allocated by the previous JSVALUE/STRING_TO_... allocation could be leaked. So now we pass an optional pointer to HANDLE_PENDING() which will call free() on it if it's not NULL, and then sets it to NULL for good measure.
-
- Dec 01, 2016
-
-
rswindell authored
function where the error is being reported from. So the WHERE macro now contains the __FUNCTION__ "macro" and the various js*.c files that use the WHERE macro to report errors had to be updated too. Also, the 'access' argument is now being passed as a signed long rather than unsigned long. Status/return values are often passed in here (e.g. from smblib) and may be negative. This argument was being displayed with %ld but wasn't being passed in as a signed value, so on 64-bit long systems, negative numbers were just printed as large (4M+) numbers. Also, no need to call getfname() in errormsg() since this is embedded in the WHERE macro (since 2009).
-
- Oct 13, 2013
-
-
deuce authored
-
- Sep 15, 2013
-
-
rswindell authored
or 'longs'. Amazing that no one noticed.
-
- Feb 11, 2013
-
-
deuce authored
-
- Feb 10, 2013
-
-
deuce authored
-
- Feb 07, 2013
- Oct 23, 2012
-
-
deuce authored
-
- Jun 15, 2012
-
-
deuce authored
Nobody should notice a change unless their JS is broken.
-
- Oct 29, 2011
-
-
deuce authored
resolve callbacks.
-
- Oct 26, 2011
-
-
deuce authored
functions when an excpetion is pending. Some work still needs to be done on js_msgbase.c, js_user.c, and mailsrvr.c
-
- Oct 19, 2011
-
-
deuce authored
-
- Oct 16, 2011
- Oct 14, 2011
-
-
deuce authored
When a minimum number of parameters is specified in the method spec, this shouldn't be required, but overkill is better than underkill.
-
- Oct 11, 2011
-
-
deuce authored
-
- Oct 10, 2011
-
-
deuce authored
Only js_ValueToStringBytes() still leaks.
-
- Oct 09, 2011
- Oct 08, 2011
-
-
deuce authored
-
- Sep 09, 2011
- Sep 07, 2011
-
-
rswindell authored
-
- Sep 05, 2011
-
-
deuce authored
-