Skip to content
Snippets Groups Projects
Commit 6fd9f057 authored by George Nachman's avatar George Nachman
Browse files

Don't honor pending closes while in IR because it may release a PseudoTerminal...

Don't honor pending closes while in IR because it may release a PseudoTerminal that's still in use in the call stack. Also check in DVRBuffer.h, missed in a recent commit.
parent 2f917ccf
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -58,8 +58,7 @@ typedef enum {
 
// Maps a frame key number to DVRIndexEntry*.
NSMutableDictionary* index_;
id sanityCheck; // TODO(georgen): remove this after the source of corruption of index_ is found
// First key in index.
long long firstKey_;
 
Loading
Loading
@@ -77,6 +76,9 @@ typedef enum {
 
// Non-inclusive end of circular buffer's used regino.
long long end_;
// this must always equal index_.
id sanityCheck; // TODO(georgen): remove this after the source of corruption of index_ is found
}
 
- (id)initWithBufferCapacity:(long long)capacity;
Loading
Loading
Loading
Loading
@@ -64,10 +64,14 @@
{
[session release];
if (hasPendingClose) {
[aTerm closeSession:session];
// TODO(georgen): We don't honor pending closes. It's not safe to close right now because
// this may release aTerm, but aTerm may exist in the calling stack (in many places!).
// It might work to start a timer to close it, but that would have some serious unexpected
// side effects.
// [aTerm closeSession:session];
return;
}
if (hasPendingBlurChange) {
if (pendingBlur) {
[aTerm enableBlur];
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment