6ff111a141
* Don't use JSON to send the result of `ipcRenderer.sendSync`. - Change the return type of AtomViewHostMsg_Message_Sync from `base::string16` to `base::ListValue` - Adjust lib/browser/api/web-contents.js and /lib/renderer/api/ipc-renderer.js to wrap/unwrap return values to/from array, instead of serializing/deserializing JSON. This change can greatly improve `ipcRenderer.sendSync` calls where the return value contains Buffer instances, because those are converted to Array before being serialized to JSON(which has no efficient way of representing byte arrays). A simple benchmark where remote.require('fs') was used to read a 16mb file got at least 5x faster, not to mention it used a lot less memory. This difference tends increases with larger buffers. * Don't base64 encode Buffers * Don't allocate V8ValueConverter on the heap * Replace hidden global.sandbox with NodeBindings::IsInitialized() * Refactoring: check NodeBindings::IsInitialized() in V8ValueConverter * Refactor problematic test to make it more reliable * Add tests for NaN and Infinity |
||
---|---|---|
.. | ||
fixtures | ||
static | ||
api-app-spec.js | ||
api-auto-updater-spec.js | ||
api-browser-view-spec.js | ||
api-browser-window-affinity-spec.js | ||
api-browser-window-spec.js | ||
api-callbacks-registry-spec.js | ||
api-clipboard-spec.js | ||
api-crash-reporter-spec.js | ||
api-debugger-spec.js | ||
api-deprecations-spec.js | ||
api-desktop-capturer-spec.js | ||
api-dialog-spec.js | ||
api-global-shortcut-spec.js | ||
api-in-app-purchase-spec.js | ||
api-ipc-main-spec.js | ||
api-ipc-renderer-spec.js | ||
api-menu-item-spec.js | ||
api-menu-spec.js | ||
api-native-image-spec.js | ||
api-net-spec.js | ||
api-notification-dbus-spec.js | ||
api-notification-spec.js | ||
api-power-monitor-spec.js | ||
api-power-save-blocker-spec.js | ||
api-process-spec.js | ||
api-protocol-spec.js | ||
api-remote-spec.js | ||
api-screen-spec.js | ||
api-session-spec.js | ||
api-shell-spec.js | ||
api-system-preferences-spec.js | ||
api-touch-bar-spec.js | ||
api-view-spec.js | ||
api-web-contents-spec.js | ||
api-web-contents-view-spec.js | ||
api-web-frame-spec.js | ||
api-web-request-spec.js | ||
asar-spec.js | ||
chromium-spec.js | ||
modules-spec.js | ||
node-spec.js | ||
package.json | ||
security-warnings-spec.js | ||
webview-spec.js | ||
window-helpers.js |