Make local_terminal a member variable
This commit is contained in:
+3
-3
@@ -100,15 +100,15 @@ void STMClient::main_init( void )
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* local state */
|
/* local state */
|
||||||
Terminal::Complete terminal( window_size.ws_col, window_size.ws_row );
|
local_terminal = new Terminal::Complete( window_size.ws_col, window_size.ws_row );
|
||||||
|
|
||||||
/* initialize screen */
|
/* initialize screen */
|
||||||
string init = Terminal::Display::new_frame( false, terminal.get_fb(), terminal.get_fb() );
|
string init = Terminal::Display::new_frame( false, local_terminal->get_fb(), local_terminal->get_fb() );
|
||||||
swrite( STDOUT_FILENO, init.data(), init.size() );
|
swrite( STDOUT_FILENO, init.data(), init.size() );
|
||||||
|
|
||||||
/* open network */
|
/* open network */
|
||||||
Network::UserStream blank;
|
Network::UserStream blank;
|
||||||
network = new Network::Transport< Network::UserStream, Terminal::Complete >( blank, terminal,
|
network = new Network::Transport< Network::UserStream, Terminal::Complete >( blank, *local_terminal,
|
||||||
key.c_str(), ip.c_str(), port );
|
key.c_str(), ip.c_str(), port );
|
||||||
|
|
||||||
/* tell server the size of the terminal */
|
/* tell server the size of the terminal */
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ private:
|
|||||||
int winch_fd, shutdown_signal_fd;
|
int winch_fd, shutdown_signal_fd;
|
||||||
struct winsize window_size;
|
struct winsize window_size;
|
||||||
|
|
||||||
|
Terminal::Complete *local_terminal;
|
||||||
Network::Transport< Network::UserStream, Terminal::Complete > *network;
|
Network::Transport< Network::UserStream, Terminal::Complete > *network;
|
||||||
uint64_t last_remote_num;
|
uint64_t last_remote_num;
|
||||||
|
|
||||||
@@ -34,6 +35,7 @@ public:
|
|||||||
saved_termios(), raw_termios(),
|
saved_termios(), raw_termios(),
|
||||||
winch_fd(), shutdown_signal_fd(),
|
winch_fd(), shutdown_signal_fd(),
|
||||||
window_size(),
|
window_size(),
|
||||||
|
local_terminal( NULL ),
|
||||||
network( NULL ),
|
network( NULL ),
|
||||||
last_remote_num( -1 )
|
last_remote_num( -1 )
|
||||||
{}
|
{}
|
||||||
@@ -44,6 +46,10 @@ public:
|
|||||||
|
|
||||||
~STMClient()
|
~STMClient()
|
||||||
{
|
{
|
||||||
|
if ( local_terminal != NULL ) {
|
||||||
|
delete local_terminal;
|
||||||
|
}
|
||||||
|
|
||||||
if ( network != NULL ) {
|
if ( network != NULL ) {
|
||||||
delete network;
|
delete network;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user