[rkward-cvs] SF.net SVN: rkward:[3182] branches/2010_10_18_backend_restructuring_branch/ rkward/rbackend/rkrbackend.cpp
tfry at users.sourceforge.net
tfry at users.sourceforge.net
Tue Nov 9 11:38:58 UTC 2010
Revision: 3182
http://rkward.svn.sourceforge.net/rkward/?rev=3182&view=rev
Author: tfry
Date: 2010-11-09 11:38:58 +0000 (Tue, 09 Nov 2010)
Log Message:
-----------
Fix a few false positive detections of interrupts
Modified Paths:
--------------
branches/2010_10_18_backend_restructuring_branch/rkward/rbackend/rkrbackend.cpp
Modified: branches/2010_10_18_backend_restructuring_branch/rkward/rbackend/rkrbackend.cpp
===================================================================
--- branches/2010_10_18_backend_restructuring_branch/rkward/rbackend/rkrbackend.cpp 2010-11-07 12:32:23 UTC (rev 3181)
+++ branches/2010_10_18_backend_restructuring_branch/rkward/rbackend/rkrbackend.cpp 2010-11-09 11:38:58 UTC (rev 3182)
@@ -706,8 +706,10 @@
// NOTE: if R_interrupts_pending stops being exported one day, we might be able to use R_CheckUserInterrupt() inside an R_ToplevelExec() to find out, whether an interrupt was still pending.
if (!R_interrupts_pending) {
RKRBackend::repl_status.interrupted = false;
- foreach (RCommandProxy *command, RKRBackend::this_pointer->all_current_commands) command->status |= RCommand::Canceled;
- RK_DO (qDebug ("interrupted"), RBACKEND, DL_DEBUG);
+ if (!RKRBackend::repl_status.user_command_status == RKRBackend::RKReplStatus::ReplIterationKilled) { // was interrupted only to step out of the repl iteration
+ foreach (RCommandProxy *command, RKRBackend::this_pointer->all_current_commands) command->status |= RCommand::Canceled;
+ RK_DO (qDebug ("interrupted"), RBACKEND, DL_DEBUG);
+ }
}
} else {
QString string = RKRSupport::SEXPToString (call);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the rkward-tracker
mailing list