On Fri, 10 Jul 2026 10:37:45 +0200, Fabien Romano <fabienromano@gmail.com> wrote: > > > An AI found the crash is related to a web serial. > > I have no idea why it randomly fails on my side. > But yes, after trying a few times, I also get the crash. > > Crash: > rm -rf /tmp/chrome-vinted-serial && \ > /usr/local/bin/chrome \ > --user-data-dir=/tmp/chrome-vinted-serial \ > --no-first-run \ > https://www.vinted.com/ > > No crash: > rm -rf /tmp/chrome-vinted-noserial && \ > /usr/local/bin/chrome \ > --user-data-dir=/tmp/chrome-vinted-noserial \ > --no-first-run \ > --disable-blink-features=Serial \ > --disable-features=WebSerialAPI \ > https://www.vinted.com/ > > From my first test, --disable-blink-features=Serial is enough. > > Please test those flags and confirm it fixes your issue. > > I also get this crash while looking for WASM stuff online. > https://patrickelectric.work/mavlink2rest-wasm/ > > This one crashes all the time as it explicitly tests the serial. > > rm -rf /tmp/chrome-serial && \ > /usr/local/bin/chrome \ > --user-data-dir=/tmp/chrome-serial \ > --no-first-run \ > https://patrickelectric.work/mavlink2rest-wasm/ > > Also, I do not understand why, but --js-flags=--jitless prevents the crash. > I guess this is specific to this test. > > The below diff isn't enough, but it show where to look. > Next we have to handle the failure and return / close properly. > Otherwise tests fail on a timeout, which sounds not correct. > > Except if someone wants to implement serial ... > > -- > Fabien Romano > > QOL. Do not crash, fail silently. > XXX notyet > > Index: services/device/device_service.cc > --- services/device/device_service.cc.orig > +++ services/device/device_service.cc > @@ -310,7 +310,8 @@ void DeviceService::BindSerialPortManager( > serial_port_manager_.AsyncCall(&SerialPortManagerImpl::Bind, FROM_HERE) > .WithArgs(std::move(receiver)); > #else // defined(IS_SERIAL_ENABLED_PLATFORM) > - NOTREACHED() << "Serial devices not supported on this platform."; > + // Serial is unsupported on this platform. Let the receiver close so the > + // renderer observes a disconnect and requestPort() fails gracefully. >
No comments:
Post a Comment