Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Issue 5351131051982848: Issues #1173 - Add exception handler to entry point FilterLoader (Closed)

Created:
Feb. 12, 2015, 7:26 p.m. by Eric
Modified:
Feb. 17, 2015, 1:41 p.m.
Reviewers:
sergei, Oleksandr
CC:
Felix Dahlke
Visibility:
Public.

Description

Issues #1173 - Add exception handler to entry point FilterLoader FilterLoader() in PluginTabBase.cpp is a thread-main function and thus an entry point. Add an exception handler around the body of that function. The symptom in #1654 arises from a race condition between loading filters and terminating the application. This change set does not fix this problem properly, which would require thinking through graceful termination of the plugin as a whole. The exception thrown is a SEH (system) exception, not a C++ exception. We are not compiling with /EHa, which causes 'catch(...)' clauses to catch SEH exceptions. Thus the present code isn't even a stop-gap for #1654.

Patch Set 1 #

Total comments: 2

Patch Set 2 : changed comment that was no longer relevant #

Unified diffs Side-by-side diffs Delta from patch set Stats (+10 lines, -2 lines) Patch
M src/plugin/PluginTabBase.cpp View 1 1 chunk +10 lines, -2 lines 0 comments Download

Messages

Total messages: 9
Eric
I would prefer to get this committed quickly and change it later rather than using ...
Feb. 12, 2015, 7:40 p.m. (2015-02-12 19:40:58 UTC) #1
sergei
I would say it's not related to #1654, it's only #1173. > The symptom in ...
Feb. 12, 2015, 11:08 p.m. (2015-02-12 23:08:47 UTC) #2
Oleksandr
I guess the real problem in LoadHideFilters is not that something is throwing an unhandled ...
Feb. 13, 2015, 3:47 a.m. (2015-02-13 03:47:01 UTC) #3
sergei
JIC, I want to add that I also don't mind about it but the issue ...
Feb. 13, 2015, 10:01 a.m. (2015-02-13 10:01:40 UTC) #4
Eric
I changed both the issue title and its description. Please read the new description. After ...
Feb. 13, 2015, 2:23 p.m. (2015-02-13 14:23:54 UTC) #5
sergei
> We are not compiling with /EHa, which causes 'catch(...)' And we should not do ...
Feb. 13, 2015, 2:41 p.m. (2015-02-13 14:41:40 UTC) #6
Eric
http://codereview.adblockplus.org/5351131051982848/diff/5629499534213120/src/plugin/PluginTabBase.cpp File src/plugin/PluginTabBase.cpp (right): http://codereview.adblockplus.org/5351131051982848/diff/5629499534213120/src/plugin/PluginTabBase.cpp#newcode98 src/plugin/PluginTabBase.cpp:98: // In this particular case, it's OK to simply ...
Feb. 13, 2015, 3:13 p.m. (2015-02-13 15:13:52 UTC) #7
sergei
LGTM without the paragraph "The symptom in #1654 arises from a race condition between loading ...
Feb. 13, 2015, 3:15 p.m. (2015-02-13 15:15:26 UTC) #8
Oleksandr
Feb. 17, 2015, 12:21 p.m. (2015-02-17 12:21:23 UTC) #9
LGTM

Powered by Google App Engine
This is Rietveld