Changes between Version 1 and Version 2 of Ticket #13443, comment 42


Ignore:
Timestamp:
Oct 26, 2014, 10:13:07 AM (5 years ago)
Author:
cypherpunks
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #13443, comment 42

    v1 v2  
    1 DirectShow's classes using [https://mxr.mozilla.org/mozilla-esr31/source/media/webrtc/trunk/webrtc/modules/video_capture/windows/BaseFilter.h#11 Component Object Model (COM)], which hardly depends on exception handling:
    2 {{{
    3 inline void _com_issue_error(HRESULT hr) throw(_com_error) {
    4 #if __EXCEPTIONS
    5     throw _com_error(hr);
    6 #else
    7     /* This is designed to use exceptions. If exceptions are disabled, there is not much we can do here. */
    8     __debugbreak();
    9 #endif
    10 }
    11 }}}
    12 Firefox can't handle exceptions if built using GCC (Linux or MinGW, -fno-exceptions used). MSVC using cheap SEH so can handle exceptions. Not every exception code is fatal, but if no exception handling enabled then every error leads to program termination. MinGW version of _com_issue_error makes it clear by generating INT3.
     1Firefox and mingw are incompatible. Mozilla not even finished to code proper support of mingw, and they builds using MSVC for windows. What purpose to base Tor Browser on software that was designed for M$ and with every new feature even more close to M$?