Skip to content
Snippets Groups Projects
  1. May 06, 2019
  2. May 05, 2019
  3. May 04, 2019
    • rswindell's avatar
      smb_getplaintext and smb_getmsgtxt(...,GETMSGTXT_PLAIN) will now fall-back · 284b31b3
      rswindell authored
      to a text/html part of a multi-part MIME encoded message if no text/plain part
      exists.
      Changed smbmsg_t.charset to smbmsg_t.text_charset.
      Added smbmsg_t.text_subtype (e.g. "plain" or "html").
      Fixed issue with parsing parsed plain-text when the charset was the last
      element of the MIME-part header.
      MIMEDecodedPlainTextFmt text.dat line now includes the text sub-type arg
      284b31b3
    • rswindell's avatar
    • rswindell's avatar
      Added a new sbbs_t.console (JS console.status) flag: CON_CR_CLREOL, which · 0dcfd4ff
      rswindell authored
      when set, force a clear-to-end-of-line sequence to be sent to the remote
      terminal before sending a carriage-return (CR, '\r') character. This is useful
      in scenarios where you want to move/home the cursor and *not* clear the screen
      and then display or execute something that assumes clean lines are being
      displayed on and thus wouldn'd bother with any clear-to-eol sequences before
      line-endings.
      Any scripts that enable this mode should disable it upon exit (e.g. using
      js.on_exit() to restore the original console status).
      0dcfd4ff
    • rswindell's avatar
      Add an optional mode (K_* flag) argument to sbbs_t::getkeys() and by extension, · 578f7af1
      rswindell authored
      JS's console.getkeys(). If no mode value is specified, K_UPPER is the default
      behavior (same as before). *.getkeys() currently only recognizes the following
      mode flags:
      - K_UPPER
      - K_NOECHO
      - K_NOCRLF
      
      K_NONE (0) is also a valid value.
      578f7af1
    • rswindell's avatar
    • rswindell's avatar
      Resolved GCC error: 'js_bbs_class' was declared 'extern' and later 'static' · efb81b98
      rswindell authored
      MSVC had no problem with this. <sigh>
      efb81b98
    • rswindell's avatar
      Define and use a wrapper for JS_GetInstancePrivate(): js_GetClassPrivate() · 6f83c4ff
      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.
      6f83c4ff
  4. May 03, 2019
  5. May 02, 2019
  6. May 01, 2019
  7. Apr 30, 2019
  8. Apr 29, 2019
Loading