diff --git a/autobuild.xml b/autobuild.xml
index eb057ec8e044e677fd4b6542f5ed444baa0ebbfa..1ead2c409f73f74498dc0aec7fbfbee457230221 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -580,9 +580,9 @@
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>856ba0e5b7be4bf683cf2849bce845e0</string>
+              <string>a0dd76112ade26f5bcc47b801ca28d5f</string>
               <key>url</key>
-              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/72458/699860/dullahan-1.7.0.202011160759_81.3.10_gb223419_chromium-81.0.4044.138-darwin64-552313.tar.bz2</string>
+              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/80065/756313/dullahan-1.10.0.202104131525_89.0.17_ge7bbb1d_chromium-89.0.4389.114-darwin64-558200.tar.bz2</string>
             </map>
             <key>name</key>
             <string>darwin64</string>
@@ -592,9 +592,9 @@
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>515950c911a53ff910b18c7c417ea984</string>
+              <string>520bafbf2d7f660297390d46632cce89</string>
               <key>url</key>
-              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/72460/699870/dullahan-1.7.0.202011161603_81.3.10_gb223419_chromium-81.0.4044.138-windows-552313.tar.bz2</string>
+              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/80066/756326/dullahan-1.10.0.202104131537_89.0.17_ge7bbb1d_chromium-89.0.4389.114-windows-558200.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows</string>
@@ -604,16 +604,16 @@
             <key>archive</key>
             <map>
               <key>hash</key>
-              <string>f1dccbdfe0603f488eeee4c8f518c959</string>
+              <string>37d579ff1f13b2a07b696e09cddc486d</string>
               <key>url</key>
-              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/72459/699874/dullahan-1.7.0.202011161603_81.3.10_gb223419_chromium-81.0.4044.138-windows64-552313.tar.bz2</string>
+              <string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/80067/756330/dullahan-1.10.0.202104131537_89.0.17_ge7bbb1d_chromium-89.0.4389.114-windows64-558200.tar.bz2</string>
             </map>
             <key>name</key>
             <string>windows64</string>
           </map>
         </map>
         <key>version</key>
-        <string>1.7.0.202011161603_81.3.10_gb223419_chromium-81.0.4044.138</string>
+        <string>1.10.0.202104131537_89.0.17_ge7bbb1d_chromium-89.0.4389.114</string>
       </map>
       <key>elfio</key>
       <map>
diff --git a/indra/media_plugins/cef/media_plugin_cef.cpp b/indra/media_plugins/cef/media_plugin_cef.cpp
index 0bb62d79ff09c9e491d751333fbf69fb859ea09e..c658f354805a8ed11ba9d0dcec0b908f19f0d258 100644
--- a/indra/media_plugins/cef/media_plugin_cef.cpp
+++ b/indra/media_plugins/cef/media_plugin_cef.cpp
@@ -525,8 +525,18 @@ void MediaPluginCEF::receiveMessage(const char* message_string)
 				mCEFLib->setOnJSDialogCallback(std::bind(&MediaPluginCEF::onJSDialogCallback, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));
 				
 				dullahan::dullahan_settings settings;
+#if LL_WINDOWS
+				// As of CEF version 83+, for Windows versions, we need to tell CEF 
+				// where the host helper process is since this DLL is not in the same
+				// dir as the executable that loaded it (SLPlugin.exe). The code in 
+				// Dullahan that tried to figure out the location automatically uses 
+				// the location of the exe which isn't helpful so we tell it explicitly.
+				char cur_dir_str[MAX_PATH];
+				GetCurrentDirectoryA(MAX_PATH, cur_dir_str);
+				settings.host_process_path = std::string(cur_dir_str);
+#endif
 				settings.accept_language_list = mHostLanguage;
-				settings.background_color = 0xffffffff;
+				settings.background_color = 0xff282828; // close to Viewer background color
 				settings.cache_enabled = true;
 				settings.root_cache_path = mRootCachePath;
 				settings.cache_path = mCachePath;
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index adac7af71235ea45c359ede17115d61058012093..0207256e96adb49def9abbdbad104bc9eff99117 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -614,6 +614,12 @@ def construct(self):
                 self.path("msvcp140.dll")
                 self.path("vcruntime140.dll")
 
+            # as of CEF 88, this (apparently software rendering support)
+            # folder is required - likely a Chromium bug - but including
+            # for now until the root cause is found - it's tiny
+            with self.prefix(src=os.path.join(pkgdir, 'bin', 'release')):
+                self.path("swiftshader/")
+
             # CEF files common to all configurations
             with self.prefix(src=os.path.join(pkgdir, 'resources')):
                 self.path("cef.pak")