Squashed commit of the following:
commit
ebcfc6b5298aeb1af5dac7570412fa95feeed1a0
Author: Masud Hasan <mashasan@cisco.com>
Date: Tue Jan 8 10:16:36 2019 -0500
control: Avoid deleting objects on write failures so that they get deleted from main thread during read polling
ControlMgmt::delete_control(fd);
}
-bool ControlConn::send_queued_response()
+void ControlConn::send_queued_response()
{
- if ( !request->send_queued_response() )
- {
- ControlMgmt::delete_control(fd);
- return false;
- }
- return true;
+#ifdef SHELL
+ request->send_queued_response();
+#endif
}
// FIXIT-L would like to flush prompt w/o \n
void block();
void unblock();
- bool send_queued_response();
+ void send_queued_response();
bool is_blocked() const { return blocked; }
void configure() const;
ControlConn* control = (control_fd >= 0)? (ControlMgmt::find_control(control_fd) ) : nullptr;
if( control )
- {
- if ( !control->send_queued_response() )
- {
- control_fd = -1;
- return;
- }
- }
+ control->send_queued_response();
ac->execute(analyzer);
}
}
#ifdef SHELL
-bool Request::send_queued_response()
+void Request::send_queued_response()
{
- bool ret = true;
if ( queued_response )
{
- ret = write_response(queued_response);
+ write_response(queued_response);
queued_response = nullptr;
}
-
- return ret;
}
#endif
bool write_response(const char* s) const;
void respond(const char* s, bool queue_response = false);
#ifdef SHELL
- bool send_queued_response();
+ void send_queued_response();
#endif
private: