diff --git a/CHANGELOG.md b/CHANGELOG.md
index dd219f6..7695a3d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,16 +1,4 @@
-## 1.15.0
-
-### Language features
-* Added support for [configuration-specific imports](https://github.com/munificent/dep-interface-libraries/blob/master/Proposal.md).
-  On the VM and dart2js, they can be enabled with `--conditional-directives`.
-
-  The analyzer requires an additional option in an `options` file:
-  ```yaml
-  analyzer:
-    language:
-      enableConditionalDirectives: true
-  ```
-  Then run the analyzer with `--options=<path-to-options-file>`.
+## 1.15.0 - 2016-03-09
 
 ### Core library changes
 
@@ -35,6 +23,37 @@
     `SecurityContext.usePrivateKeyBytes`, for use as the password for PKCS12
     data.
 
+### Dartium
+
+  * The Chrome-based tools that ship as part of the Dart SDK – Dartium and
+    content shell – are now based on Chrome version 45 (instead of Chrome 39).
+  * Dart browser libraries (`dart:html`, `dart:svg`, etc) have not been updated.
+    * These are still based on Chrome 39.
+    * These APIs will be updated in a future release.
+  * Note that there are experimental APIs which have changed in the underlying
+    browser, and will not work with the older libraries.
+    For example, `Element.animate`.
+
+### Service protocol changes
+
+* Fixed a documentation bug where the field `extensionRPCs` in `Isolate`
+  was not marked optional.
+
+### Experimental language features
+  * Added support for [configuration-specific imports](https://github.com/munificent/dep-interface-libraries/blob/master/Proposal.md).
+    On the VM and `dart2js`, they can be enabled with `--conditional-directives`.
+
+    The analyzer requires additional configuration:
+    ```yaml
+    analyzer:
+      language:
+        enableConditionalDirectives: true
+    ```
+
+    Read about [configuring the analyzer] for more details.
+
+[configuring the analyzer]: https://github.com/dart-lang/sdk/tree/master/pkg/analyzer#configuring-the-analyzer
+
 ## 1.14.2 - 2016-02-09
 
 * Fixes a bug where pub would download packages from pub.dartlang.org even when
diff --git a/runtime/bin/socket_patch.dart b/runtime/bin/socket_patch.dart
index 09904b4..1ec51b7 100644
--- a/runtime/bin/socket_patch.dart
+++ b/runtime/bin/socket_patch.dart
@@ -1243,9 +1243,11 @@
     native.isClosedWrite = true;
     if (fd != null) _getStdioHandle(native, fd);
     var result = new _RawSocket(native);
-    result._isMacOSTerminalInput =
-        Platform.isMacOS &&
-        _StdIOUtils._socketType(result._socket) == _STDIO_HANDLE_TYPE_TERMINAL;
+    if (fd != null) {
+      var socketType = _StdIOUtils._socketType(result._socket);
+      result._isMacOSTerminalInput =
+          Platform.isMacOS && socketType == _STDIO_HANDLE_TYPE_TERMINAL;
+    }
     return result;
   }
 
diff --git a/tools/VERSION b/tools/VERSION
index 42b3a94..81183ef7 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -28,4 +28,4 @@
 MINOR 15
 PATCH 0
 PRERELEASE 5
-PRERELEASE_PATCH 0
+PRERELEASE_PATCH 1
