Mon May 13 19:18:46 2002 Michael Jennings (mej)
Fixed indentation. SVN revision: 6252
This commit is contained in:
parent
0bdd7edc63
commit
b173e4053d
|
@ -4647,3 +4647,7 @@ Mon May 13 18:46:06 2002 Michael Jennings (mej)
|
|||
|
||||
Latest Escreen patch from Azundris <hacks@azundris.com>.
|
||||
----------------------------------------------------------------------
|
||||
Mon May 13 19:18:46 2002 Michael Jennings (mej)
|
||||
|
||||
Fixed indentation.
|
||||
----------------------------------------------------------------------
|
||||
|
|
|
@ -796,9 +796,11 @@ button_check_action(buttonbar_t *bbar, button_t *button, unsigned char press, Ti
|
|||
while (b && !(b->flags & NS_SCREAM_CURR)) /* find active disp */
|
||||
b = b->next; /* when trying to change name of non- */
|
||||
if (b && b != button) { /* active display, make that disp active */
|
||||
button->flags|=NS_SCREAM_CURR; b->flags&=~NS_SCREAM_CURR;
|
||||
button->flags |= NS_SCREAM_CURR;
|
||||
b->flags &= ~NS_SCREAM_CURR;
|
||||
bbar_draw(bbar, IMAGE_STATE_CURRENT, MODE_MASK);
|
||||
button->flags&=~NS_SCREAM_CURR; b->flags|=NS_SCREAM_CURR;
|
||||
button->flags &= ~NS_SCREAM_CURR;
|
||||
b->flags |= NS_SCREAM_CURR;
|
||||
|
||||
while (d2 && d2->index != n)
|
||||
d2 = d2->next;
|
||||
|
@ -806,15 +808,16 @@ button_check_action(buttonbar_t *bbar, button_t *button, unsigned char press, Ti
|
|||
TermWin.screen->curr = d2; /* pre-adjust curr ptr */
|
||||
else
|
||||
fprintf(stderr, NS_PREFIX "button_check_action: no display %d in this session : (\n", n);
|
||||
(void)ns_screen_command(TermWin.screen,button->action.string); }
|
||||
(void) ns_screen_command(TermWin.screen, button->action.string);
|
||||
}
|
||||
|
||||
if (prvs == 2) /* middle button -- kill */
|
||||
(void) ns_parse_screen_key(TermWin.screen, NS_SCREEN_KILL);
|
||||
else /* right button -- rename */
|
||||
(void)ns_parse_screen_key(TermWin.screen,NS_SCREEN_RENAME); }
|
||||
else /* left button -- select */
|
||||
(void)ns_screen_command(TermWin.screen,button->action.string); }
|
||||
else /* not in screen-mode, use normal facilities */
|
||||
(void) ns_parse_screen_key(TermWin.screen, NS_SCREEN_RENAME);
|
||||
} else /* left button -- select */
|
||||
(void) ns_screen_command(TermWin.screen, button->action.string);
|
||||
} else /* not in screen-mode, use normal facilities */
|
||||
#endif
|
||||
tt_write((unsigned char *) button->action.string, strlen(button->action.string));
|
||||
}
|
||||
|
@ -1073,8 +1076,7 @@ bbar_redraw(buttonbar_t *bbar)
|
|||
addright add to rbuttons instead of buttons
|
||||
<- NULL, or the bar */
|
||||
|
||||
buttonbar_t *
|
||||
bbar_insert_button(buttonbar_t *bbar, button_t *button, int after, int addright)
|
||||
buttonbar_t *bbar_insert_button(buttonbar_t *bbar, button_t *button, int after, int addright)
|
||||
{
|
||||
int state = 1;
|
||||
|
||||
|
@ -1102,17 +1104,17 @@ bbar_insert_button(buttonbar_t *bbar, button_t *button, int after, int addright)
|
|||
} while ((b = b->next));
|
||||
if (after >= (c - 1)) {
|
||||
button->next = bbar->rbuttons;
|
||||
bbar->rbuttons=button; }
|
||||
else {
|
||||
bbar->rbuttons = button;
|
||||
} else {
|
||||
b = bbar->rbuttons;
|
||||
after = c - after - 2;
|
||||
while (after-- > 0 && b->next)
|
||||
b = b->next;
|
||||
button->next = b->next;
|
||||
b->next = button; }
|
||||
b->next = button;
|
||||
}
|
||||
}
|
||||
else { /* add to buttons */
|
||||
} else { /* add to buttons */
|
||||
if (!bbar->buttons || after < 0) { /* first button */
|
||||
button->next = bbar->buttons;
|
||||
bbar->buttons = button;
|
||||
|
@ -1135,8 +1137,7 @@ bbar_insert_button(buttonbar_t *bbar, button_t *button, int after, int addright)
|
|||
while (bar->next)
|
||||
bar = bar->next;
|
||||
bar->next = bbar;
|
||||
}
|
||||
else
|
||||
} else
|
||||
buttonbar = bbar;
|
||||
|
||||
bbar_init(bbar, TermWin.width);
|
||||
|
|
|
@ -1131,8 +1131,7 @@ clean_exit(void)
|
|||
font_cache_clear();
|
||||
eterm_font_list_clear();
|
||||
# ifdef PIXMAP_SUPPORT
|
||||
FOREACH_IMAGE(free_eterm_image(&(images[idx]));
|
||||
);
|
||||
FOREACH_IMAGE(free_eterm_image(&(images[idx])););
|
||||
# endif
|
||||
for (i = 0; i < NRS_COLORS; i++) {
|
||||
if (rs_color[i]) {
|
||||
|
@ -2335,7 +2334,8 @@ redraw_xywh(void *xd, int x, int y, int w, int h)
|
|||
|
||||
|
||||
|
||||
button_t *screen_button_create(char *text,char code) {
|
||||
button_t *screen_button_create(char *text, char code)
|
||||
{
|
||||
button_t *b;
|
||||
char p[3];
|
||||
|
||||
|
@ -2348,7 +2348,8 @@ button_t *screen_button_create(char *text,char code) {
|
|||
|
||||
button_set_action(b, ACTION_ECHO, p);
|
||||
|
||||
return b; }
|
||||
return b;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -2374,7 +2375,8 @@ ins_disp(void *xd, int after, char *name)
|
|||
|
||||
if ((bbar = bbar_insert_button(bbar, button, after, FALSE))) {
|
||||
*((buttonbar_t **) xd) = bbar;
|
||||
return NS_SUCC; }
|
||||
return NS_SUCC;
|
||||
}
|
||||
|
||||
button_free(button);
|
||||
return NS_FAIL;
|
||||
|
@ -2401,7 +2403,8 @@ add_screen_ctl_button(buttonbar_t **xd,char *name,char key)
|
|||
|
||||
if ((bbar = bbar_insert_button(bbar, button, -1, TRUE))) {
|
||||
*xd = bbar;
|
||||
return NS_SUCC; }
|
||||
return NS_SUCC;
|
||||
}
|
||||
|
||||
button_free(button);
|
||||
return NS_FAIL;
|
||||
|
@ -2523,8 +2526,7 @@ inp_text(void *xd, int id, char *txt)
|
|||
|
||||
/* open a dialog */
|
||||
int
|
||||
inp_dial(void *xd, char *prompt, int maxlen, char **retstr,
|
||||
int (*inp_tab)(void *,char *,size_t,size_t))
|
||||
inp_dial(void *xd, char *prompt, int maxlen, char **retstr, int (*inp_tab) (void *, char *, size_t, size_t))
|
||||
{
|
||||
switch (menu_dial(xd, prompt, maxlen, retstr, inp_tab)) {
|
||||
case 0:
|
||||
|
@ -2532,7 +2534,9 @@ inp_dial(void *xd, char *prompt, int maxlen, char **retstr,
|
|||
case -2:
|
||||
return NS_USER_CXL;
|
||||
default:
|
||||
return NS_FAIL; }}
|
||||
return NS_FAIL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -2625,7 +2629,10 @@ init_command(char **argv)
|
|||
#ifdef MULTI_CHARSET
|
||||
m->fontset = menu_list->menus[n]->fontset;
|
||||
#endif
|
||||
break; }}}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (n = 0; n < (nsc - 1); n += 2) {
|
||||
if ((i = menuitem_create(sc[n]))) {
|
||||
|
@ -2633,11 +2640,14 @@ init_command(char **argv)
|
|||
fprintf(stderr, NS_PREFIX "register %s (%d)\n", &sc[n + 1][1], *sc[n + 1]);
|
||||
# endif
|
||||
menuitem_set_action(i, MENUITEM_ECHO, sc[n + 1]);
|
||||
menu_add_item(m,i); }}
|
||||
menu_add_item(m, i);
|
||||
}
|
||||
}
|
||||
|
||||
if ((i = menuitem_create("About..."))) {
|
||||
menuitem_set_action(i, MENUITEM_ALERT, "Screen compatibility layer by Azundris <scream@azundris.com>");
|
||||
menu_add_item(m,i); }
|
||||
menu_add_item(m, i);
|
||||
}
|
||||
|
||||
if ((button = button_create(NS_MENU_TITLE))) {
|
||||
if (!(buttonbar = bbar_insert_button(buttonbar, button, -1, TRUE))) {
|
||||
|
@ -2647,15 +2657,18 @@ init_command(char **argv)
|
|||
#endif
|
||||
menu_delete(m);
|
||||
button_set_action(button, ACTION_STRING, NS_MENU_TITLE);
|
||||
button_free(button); }
|
||||
else {
|
||||
button_free(button);
|
||||
} else {
|
||||
int j, k = menu_list ? menu_list->nummenus : 0;
|
||||
menu_list = menulist_add_menu(menu_list, m);
|
||||
for (j = k; j < menu_list->nummenus; j++)
|
||||
event_data_add_mywin(&menu_event_data, menu_list->menus[j]->win);
|
||||
if (!k)
|
||||
menu_init();
|
||||
button_set_action(button,ACTION_MENU,NS_MENU_TITLE); }}}
|
||||
button_set_action(button, ACTION_MENU, NS_MENU_TITLE);
|
||||
}
|
||||
}
|
||||
}
|
||||
/* add_screen_ctl_button(&buttonbar,"New",'c'); */
|
||||
cmd_fd = TermWin.screen->fd;
|
||||
}
|
||||
|
|
271
src/libscream.c
271
src/libscream.c
|
@ -65,7 +65,8 @@ static _ns_hop *ha = NULL; /* anchor for hop list */
|
|||
<- a matching (existing or newly created) hop structure, or NULL */
|
||||
|
||||
_ns_hop *
|
||||
ns_new_hop(int lp,char *fw,int fp,int delay,_ns_sess *s) {
|
||||
ns_new_hop(int lp, char *fw, int fp, int delay, _ns_sess * s)
|
||||
{
|
||||
_ns_hop *h = ha;
|
||||
|
||||
if (!fw || !*fw)
|
||||
|
@ -77,16 +78,16 @@ ns_new_hop(int lp,char *fw,int fp,int delay,_ns_sess *s) {
|
|||
if (s) {
|
||||
/* see if we already have a matching hop. */
|
||||
while (h && !(((h->localport == lp) || (!lp)) &&
|
||||
(!strcmp(h->fw,fw))&&
|
||||
(h->fwport==fp)&&
|
||||
(h->sess->port==s->port)&&(!strcmp(h->sess->host,s->host))))
|
||||
(!strcmp(h->fw, fw)) && (h->fwport == fp) && (h->sess->port == s->port) && (!strcmp(h->sess->host, s->host))))
|
||||
h = h->next;
|
||||
|
||||
if (h) {
|
||||
if (delay)
|
||||
h->delay = delay; /* may change delay! */
|
||||
h->refcount++;
|
||||
return h; }}
|
||||
return h;
|
||||
}
|
||||
}
|
||||
|
||||
h = malloc(sizeof(_ns_hop));
|
||||
if (h) {
|
||||
|
@ -103,8 +104,8 @@ ns_new_hop(int lp,char *fw,int fp,int delay,_ns_sess *s) {
|
|||
if (i->localport == lp) {
|
||||
f = 1;
|
||||
lp++;
|
||||
i=NULL; }
|
||||
else
|
||||
i = NULL;
|
||||
} else
|
||||
i = i->next;
|
||||
} while (f);
|
||||
}
|
||||
|
@ -115,12 +116,15 @@ ns_new_hop(int lp,char *fw,int fp,int delay,_ns_sess *s) {
|
|||
h->refcount++;
|
||||
h->next = ha;
|
||||
h->sess = s;
|
||||
ha=h; }
|
||||
else {
|
||||
ha = h;
|
||||
} else {
|
||||
free(h);
|
||||
return NULL; }}
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
return h; }
|
||||
return h;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -139,7 +143,8 @@ ns_dst_hop(_ns_hop ** ss,_ns_sess *sp)
|
|||
#ifdef NS_DEBUG_MEM
|
||||
if (s->refcount <= 0) {
|
||||
fprintf(stderr, NS_PREFIX "ns_dst_hop: leak alert -- trying to double-free hop...\n");
|
||||
return NULL; }
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (!--(s->refcount)) { /* was last ref to hop => free hop */
|
||||
|
@ -155,10 +160,10 @@ ns_dst_hop(_ns_hop ** ss,_ns_sess *sp)
|
|||
while (h && h->next != s)
|
||||
h = h->next;
|
||||
if (h)
|
||||
h->next=s->next; }
|
||||
free(s);
|
||||
h->next = s->next;
|
||||
}
|
||||
else if(sp&&sp->hop==s) {
|
||||
free(s);
|
||||
} else if (sp && sp->hop == s) {
|
||||
/* hop shouldn't point back at a session that just dereffed it
|
||||
as it's probably about to die. fix the back ref to a session
|
||||
that's actually valid. */
|
||||
|
@ -166,13 +171,16 @@ ns_dst_hop(_ns_hop ** ss,_ns_sess *sp)
|
|||
while (p && ((p == sp) || (p->port != sp->port) || (strcmp(p->host, sp->host))))
|
||||
p = p->next;
|
||||
if (!p)
|
||||
ns_desc_hop(s,NS_PREFIX "ns_dst_sess: Leak alert -- found a hop that is only\n referenced once, but has a refcount > 1. Hop data follow");
|
||||
ns_desc_hop(s,
|
||||
NS_PREFIX
|
||||
"ns_dst_sess: Leak alert -- found a hop that is only\n referenced once, but has a refcount > 1. Hop data follow");
|
||||
else
|
||||
s->sess = p;
|
||||
}
|
||||
*ss = NULL;
|
||||
}
|
||||
return NULL; }
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -277,8 +285,7 @@ ns_new_sess(void)
|
|||
while (r->next)
|
||||
r = r->next;
|
||||
r->next = s;
|
||||
}
|
||||
else
|
||||
} else
|
||||
sa = s;
|
||||
}
|
||||
return s;
|
||||
|
@ -369,7 +376,9 @@ ns_screen_command(_ns_sess * sess, char *cmd)
|
|||
cmd the command string
|
||||
<- error code */
|
||||
|
||||
int ns_screen_xcommand(_ns_sess *s,char prefix,char *cmd) {
|
||||
int
|
||||
ns_screen_xcommand(_ns_sess * s, char prefix, char *cmd)
|
||||
{
|
||||
char *i;
|
||||
int ret = NS_OOM;
|
||||
if ((i = malloc(strlen(cmd) + 4))) {
|
||||
|
@ -380,8 +389,10 @@ int ns_screen_xcommand(_ns_sess *s,char prefix,char *cmd) {
|
|||
i[l] = '\n';
|
||||
i[++l] = '\0';
|
||||
ret = ns_screen_command(s, i);
|
||||
free(i); }
|
||||
return ret; }
|
||||
free(i);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -458,18 +469,19 @@ ns_upd_stat(_ns_sess * s)
|
|||
<- msg */
|
||||
|
||||
|
||||
int ns_inp_dial(_ns_sess *s,char *prompt, int maxlen, char **retstr,
|
||||
int (*inp_tab)(void *,char *,size_t,size_t)) {
|
||||
int
|
||||
ns_inp_dial(_ns_sess * s, char *prompt, int maxlen, char **retstr, int (*inp_tab) (void *, char *, size_t, size_t))
|
||||
{
|
||||
char *c;
|
||||
int ret = NS_SUCC;
|
||||
if (s->efuns->inp_dial) {
|
||||
(void) s->efuns->inp_dial((void *) s, prompt, maxlen, retstr, inp_tab);
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
ret = NS_EFUN_NOT_SET;
|
||||
fprintf(stderr, NS_PREFIX "ns_screen_command: sess->efuns->inp_dial not set!\n");
|
||||
}
|
||||
return ret; }
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -485,10 +497,12 @@ int ns_inp_dial(_ns_sess *s,char *prompt, int maxlen, char **retstr,
|
|||
<- error code */
|
||||
|
||||
int
|
||||
ns_sess_init(_ns_sess * sess) {
|
||||
ns_sess_init(_ns_sess * sess)
|
||||
{
|
||||
if ((sess->backend == NS_MODE_NEGOTIATE) || (sess->backend == NS_MODE_SCREEN))
|
||||
return ns_parse_screenrc(sess);
|
||||
return NS_SUCC; }
|
||||
return NS_SUCC;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -518,7 +532,9 @@ get_ssh_port(void)
|
|||
<- a hop struct, or NULL
|
||||
*/
|
||||
|
||||
_ns_hop *ns_parse_hop(_ns_sess *s,char *h) {
|
||||
_ns_hop *
|
||||
ns_parse_hop(_ns_sess * s, char *h)
|
||||
{
|
||||
char *p = h, *e, *fw = NULL;
|
||||
int f = 0, v, lp = 0, fp = 0, delay = 0;
|
||||
|
||||
|
@ -528,7 +544,8 @@ _ns_hop *ns_parse_hop(_ns_sess *s,char *h) {
|
|||
if ((e = strrchr(h, ','))) {
|
||||
*(e++) = '\0';
|
||||
if (*e)
|
||||
delay=atoi(e); }
|
||||
delay = atoi(e);
|
||||
}
|
||||
|
||||
while (*p && *p != ':')
|
||||
if (!isdigit(*(p++)))
|
||||
|
@ -548,14 +565,17 @@ _ns_hop *ns_parse_hop(_ns_sess *s,char *h) {
|
|||
*(e++) = '\0';
|
||||
if (!(v = atoi(e)))
|
||||
return NULL;
|
||||
fp=v; }}
|
||||
else { /* fw:fp */
|
||||
fp = v;
|
||||
}
|
||||
} else { /* fw:fp */
|
||||
*(p++) = '\0';
|
||||
if (!(v = atoi(p)))
|
||||
return NULL;
|
||||
fp = v;
|
||||
p=h; }
|
||||
return ns_new_hop(lp,p,fp,delay,s); }
|
||||
p = h;
|
||||
}
|
||||
return ns_new_hop(lp, p, fp, delay, s);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -566,19 +586,20 @@ _ns_hop *ns_parse_hop(_ns_sess *s,char *h) {
|
|||
! stdout: info about the hop */
|
||||
|
||||
void
|
||||
ns_desc_hop(_ns_hop *h, char *doc) {
|
||||
ns_desc_hop(_ns_hop * h, char *doc)
|
||||
{
|
||||
if (!h && doc) {
|
||||
fprintf(stderr, NS_PREFIX "%s: ns_desc_hop called with broken pointer!\n", doc);
|
||||
return; }
|
||||
return;
|
||||
}
|
||||
|
||||
if (doc)
|
||||
fprintf(stderr, NS_PREFIX "%s:\n", doc);
|
||||
|
||||
fprintf(stderr, NS_PREFIX "tunnel from localhost:%d to %s:%d to %s:%d is %s. (delay %d, %d ref%s)\n",
|
||||
h->localport, h->fw, h->fwport,
|
||||
h->sess->host,h->sess->port,
|
||||
h->established?"up":"down",h->delay,
|
||||
h->refcount,h->refcount==1?"":"s"); }
|
||||
h->sess->host, h->sess->port, h->established ? "up" : "down", h->delay, h->refcount, h->refcount == 1 ? "" : "s");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -607,7 +628,8 @@ ns_desc_sess(_ns_sess * sess, char *doc)
|
|||
if (sess->hop)
|
||||
ns_desc_hop(sess->hop, NULL);
|
||||
if (sess->home)
|
||||
fprintf(stderr, NS_PREFIX "info: searching for rc in %s\n", sess->home); }
|
||||
fprintf(stderr, NS_PREFIX "info: searching for rc in %s\n", sess->home);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -709,8 +731,7 @@ ns_attach_lcl(_ns_sess ** sp)
|
|||
if (!sp || !*sp)
|
||||
return NS_FAIL;
|
||||
sess = *sp;
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s", NS_SCREEN_CALL,
|
||||
sess->rsrc?sess->rsrc:NS_SCREEN_OPTS);
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s", NS_SCREEN_CALL, sess->rsrc ? sess->rsrc : NS_SCREEN_OPTS);
|
||||
return (ret < 0 || ret > MAXCMD) ? NS_FAIL : ns_run(sess->efuns, cmd);
|
||||
}
|
||||
|
||||
|
@ -736,25 +757,17 @@ ns_attach_ssh(_ns_sess ** sp)
|
|||
if (sess->hop->established == NS_HOP_DOWN) { /* the nightmare foe */
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s -p %d -L %d:%s:%d %s@%s",
|
||||
NS_SSH_CALL, NS_SSH_TUNNEL_OPTS,
|
||||
sess->hop->fwport,
|
||||
sess->hop->localport,
|
||||
sess->host,sess->port,
|
||||
sess->user, sess->hop->fw,
|
||||
NS_SCREEM_CALL);
|
||||
sess->hop->fwport, sess->hop->localport, sess->host, sess->port, sess->user, sess->hop->fw, NS_SCREEM_CALL);
|
||||
if (ret < 0 || ret > MAXCMD)
|
||||
return NS_FAIL;
|
||||
ns_run(sess->efuns, cmd);
|
||||
sleep(sess->hop->delay);
|
||||
}
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s -p %d %s@localhost %s",
|
||||
NS_SSH_CALL,NS_SSH_OPTS,
|
||||
sess->hop->localport, sess->user,
|
||||
NS_SCREEM_CALL); }
|
||||
else {
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s -p %d %s@%s %s",
|
||||
NS_SSH_CALL,NS_SSH_OPTS,
|
||||
sess->port, sess->user, sess->host,
|
||||
NS_SCREEM_CALL); }
|
||||
NS_SSH_CALL, NS_SSH_OPTS, sess->hop->localport, sess->user, NS_SCREEM_CALL);
|
||||
} else {
|
||||
ret = snprintf(cmd, MAXCMD, "%s %s -p %d %s@%s %s", NS_SSH_CALL, NS_SSH_OPTS, sess->port, sess->user, sess->host, NS_SCREEM_CALL);
|
||||
}
|
||||
|
||||
return (ret < 0 || ret > MAXCMD) ? NS_FAIL : ns_run(sess->efuns, cmd);
|
||||
}
|
||||
|
@ -899,28 +912,27 @@ ns_attach_by_URL(char *url, char *hop,_ns_efuns ** ef, int *err, void *xd)
|
|||
*(r++) = (char) (v & 0xff);
|
||||
memmove(r, &r[2], strlen(&r[2]));
|
||||
}
|
||||
} else
|
||||
r++;
|
||||
}
|
||||
else
|
||||
r++; }
|
||||
r = p;
|
||||
f = 0;
|
||||
while (*r) {
|
||||
if (*r == ' ') { /* Padding between arguments */
|
||||
while (*r == ' ')
|
||||
r++; }
|
||||
else {
|
||||
r++;
|
||||
} else {
|
||||
if (*r == '-') {
|
||||
if (*(++r) == 'e') { /* set escape */
|
||||
char x = 0, y = 0;
|
||||
while(*(++r)==' ')
|
||||
;
|
||||
while (*(++r) == ' ');
|
||||
if ((x = ns_parse_esc(&r)) && (y = ns_parse_esc(&r))) {
|
||||
sess->escape = x;
|
||||
sess->literal=y; }}
|
||||
else if(*r=='c') { /* alt screenrc */
|
||||
sess->literal = y;
|
||||
}
|
||||
} else if (*r == 'c') { /* alt screenrc */
|
||||
char *rc, *rx;
|
||||
while(*(++r)==' ')
|
||||
;
|
||||
while (*(++r) == ' ');
|
||||
if ((rx = strchr(r, ' ')))
|
||||
*rx = '\0';
|
||||
if (*r != '/')
|
||||
|
@ -931,19 +943,28 @@ ns_attach_by_URL(char *url, char *hop,_ns_efuns ** ef, int *err, void *xd)
|
|||
#ifdef NS_DEBUG
|
||||
fprintf(stderr, NS_PREFIX "URL: searching for rc in %s\n", rc);
|
||||
#endif
|
||||
sess->home=rc; }
|
||||
sess->home = rc;
|
||||
}
|
||||
if (rx) {
|
||||
r = rx;
|
||||
*rx=' '; }}
|
||||
*rx = ' ';
|
||||
}
|
||||
}
|
||||
while (*r && (f || *r != ' ')) {
|
||||
if (*r == '\"')
|
||||
f = 1 - f;
|
||||
r++; }}
|
||||
r++;
|
||||
}
|
||||
}
|
||||
while (*r && *r != ' ') /* proceed to space */
|
||||
r++; }}
|
||||
r++;
|
||||
}
|
||||
}
|
||||
|
||||
if (!(sess->rsrc = strdup(p)))
|
||||
goto fail; }}
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
if ((p = strchr(q, ':'))) { /* port, if any */
|
||||
*(p++) = '\0';
|
||||
|
@ -972,7 +993,8 @@ ns_attach_by_URL(char *url, char *hop,_ns_efuns ** ef, int *err, void *xd)
|
|||
sess->where = NS_SU;
|
||||
if (!(pwe = getpwnam(sess->user))) {
|
||||
*err = NS_UNKNOWN_USER;
|
||||
goto fail; }
|
||||
goto fail;
|
||||
}
|
||||
}
|
||||
|
||||
if (pwe && !sess->home) {
|
||||
|
@ -1346,7 +1368,8 @@ disp_kill(_ns_disp * d3)
|
|||
<- error code */
|
||||
|
||||
int
|
||||
ns_inp_tab(void *xd,char *b,size_t l,size_t m) {
|
||||
ns_inp_tab(void *xd, char *b, size_t l, size_t m)
|
||||
{
|
||||
char *sc[] = { "acladd", "addacl", "aclchg", "chacl", "acldel", "aclgrp",
|
||||
"aclumask", "umask", "activity",
|
||||
"allpartial", "at", "attrcolor", "autonuke", "bce",
|
||||
|
@ -1379,7 +1402,8 @@ ns_inp_tab(void *xd,char *b,size_t l,size_t m) {
|
|||
"termcapinfo", "unsetenv", "utf8", "vbell",
|
||||
"vbell_msg", "vbellwait", "verbose", "version",
|
||||
"width", "windowlist", "windows", "wrap", "writebuf",
|
||||
"writelock","xoff","xon","zombie" };
|
||||
"writelock", "xoff", "xon", "zombie"
|
||||
};
|
||||
|
||||
_ns_sess *s = (_ns_sess *) xd;
|
||||
int nsc = sizeof(sc) / sizeof(char *);
|
||||
|
@ -1388,7 +1412,8 @@ ns_inp_tab(void *xd,char *b,size_t l,size_t m) {
|
|||
return s->efuns->inp_tab((void *) s, sc, nsc, b, l, m) < 0 ? NS_FAIL : NS_SUCC;
|
||||
|
||||
fprintf(stderr, NS_PREFIX "ns_screen_command: sess->efuns->inp_tab not set!\n");
|
||||
return NS_EFUN_NOT_SET; }
|
||||
return NS_EFUN_NOT_SET;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1398,7 +1423,9 @@ ns_inp_tab(void *xd,char *b,size_t l,size_t m) {
|
|||
!x the pointer is advanced to the next segment (from esc to literal etc.)
|
||||
<- return as char ('\0' -> fail) */
|
||||
|
||||
char ns_parse_esc(char **x) {
|
||||
char
|
||||
ns_parse_esc(char **x)
|
||||
{
|
||||
char r = '\0';
|
||||
|
||||
if (**x == '\\') {
|
||||
|
@ -1410,14 +1437,15 @@ char ns_parse_esc(char **x) {
|
|||
long v;
|
||||
size_t l = 0;
|
||||
while ((*e >= '0' && *e <= '7') && (l < 3)) { /* can't use endptr here : ( */
|
||||
e++; l++; }
|
||||
e++;
|
||||
l++;
|
||||
}
|
||||
*x = &e[-1];
|
||||
while (--l)
|
||||
b[l] = *(--e);
|
||||
r = (char) strtol(b, &e, 8);
|
||||
}
|
||||
}
|
||||
else if(**x=='^') {
|
||||
} else if (**x == '^') {
|
||||
(*x)++;
|
||||
r = **x;
|
||||
if (r >= 'A' && r <= 'Z')
|
||||
|
@ -1425,13 +1453,15 @@ char ns_parse_esc(char **x) {
|
|||
else if (r >= 'a' && r <= 'z')
|
||||
r = 1 + r - 'a';
|
||||
else
|
||||
r='\0'; } /* malformed */
|
||||
r = '\0';
|
||||
} /* malformed */
|
||||
else
|
||||
r = **x;
|
||||
|
||||
if (**x)
|
||||
(*x)++;
|
||||
return r; }
|
||||
return r;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1442,7 +1472,9 @@ char ns_parse_esc(char **x) {
|
|||
p the command
|
||||
<- error code */
|
||||
|
||||
int ns_parse_screen_cmd(_ns_sess *s,char *p) {
|
||||
int
|
||||
ns_parse_screen_cmd(_ns_sess * s, char *p)
|
||||
{
|
||||
char *p2;
|
||||
long v1 = -1;
|
||||
|
||||
|
@ -1455,8 +1487,8 @@ int ns_parse_screen_cmd(_ns_sess *s,char *p) {
|
|||
p2++;
|
||||
v1 = strtol(p2, &e, 0); /* magic conversion mode */
|
||||
if ((p2 == e) || (v1 < 0))
|
||||
v1=-1; }
|
||||
|
||||
v1 = -1;
|
||||
}
|
||||
#define IS_CMD(b) (strncasecmp(p,b,strlen(b))==0)
|
||||
if (!p2)
|
||||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"%s\" without an argument...\n", p);
|
||||
|
@ -1472,16 +1504,17 @@ int ns_parse_screen_cmd(_ns_sess *s,char *p) {
|
|||
if ((x = ns_parse_esc(&p2)) && (y = ns_parse_esc(&p2))) {
|
||||
s->escape = x;
|
||||
s->literal = y;
|
||||
return NS_SUCC; }
|
||||
else
|
||||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"escape\" because of invalid arguments %o %o...\n",x,y); }
|
||||
else if(IS_CMD("defscrollback")) {
|
||||
return NS_SUCC;
|
||||
} else
|
||||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"escape\" because of invalid arguments %o %o...\n", x, y);
|
||||
} else if (IS_CMD("defscrollback")) {
|
||||
if (v1 < NS_SCREEN_DEFSBB)
|
||||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"%s\" for value < %d...\n", p, NS_SCREEN_DEFSBB);
|
||||
else {
|
||||
s->dsbb = v1;
|
||||
return NS_SUCC; }}
|
||||
else if(IS_CMD("scrollback")) {
|
||||
return NS_SUCC;
|
||||
}
|
||||
} else if (IS_CMD("scrollback")) {
|
||||
if (v1 < NS_SCREEN_DEFSBB)
|
||||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"%s\" for value < %d...\n", p, NS_SCREEN_DEFSBB);
|
||||
else {
|
||||
|
@ -1491,13 +1524,16 @@ int ns_parse_screen_cmd(_ns_sess *s,char *p) {
|
|||
fprintf(stderr, NS_PREFIX "screenrc: ignoring \"%s\", cannot determine current display!?...\n", p);
|
||||
else
|
||||
s->curr->sbb = v1;
|
||||
return NS_SUCC; }}
|
||||
else {
|
||||
return NS_SUCC;
|
||||
}
|
||||
} else {
|
||||
#ifdef NS_DEBUG
|
||||
fprintf(stderr, NS_PREFIX "screenrc: bored now \"%s\"\n", p);
|
||||
#endif
|
||||
return NS_SUCC; }
|
||||
return NS_FAIL; }
|
||||
return NS_SUCC;
|
||||
}
|
||||
return NS_FAIL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1509,7 +1545,9 @@ int ns_parse_screen_cmd(_ns_sess *s,char *p) {
|
|||
to also send one if we ever forward c to the screen program.
|
||||
<- error code */
|
||||
|
||||
int ns_parse_screen_key(_ns_sess *s,char c) {
|
||||
int
|
||||
ns_parse_screen_key(_ns_sess * s, char c)
|
||||
{
|
||||
char *i = NULL;
|
||||
char b[3];
|
||||
int ret = NS_SUCC;
|
||||
|
@ -1532,7 +1570,8 @@ int ns_parse_screen_key(_ns_sess *s,char c) {
|
|||
if (i) {
|
||||
ret = ns_screen_xcommand(s, c, i);
|
||||
(void) ns_parse_screen_cmd(s, i);
|
||||
free(i); }
|
||||
free(i);
|
||||
}
|
||||
break;
|
||||
case NS_SCREEN_RENAME: /* rename current display */
|
||||
i = s->curr->name;
|
||||
|
@ -1545,14 +1584,17 @@ int ns_parse_screen_key(_ns_sess *s,char c) {
|
|||
while (l)
|
||||
n[--l] = '\x08';
|
||||
ret = ns_screen_xcommand(s, c, n);
|
||||
free(n); }
|
||||
free(i); }
|
||||
free(n);
|
||||
}
|
||||
free(i);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
ret = ns_screen_command(s, b);
|
||||
}
|
||||
|
||||
return ret; }
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1562,7 +1604,9 @@ int ns_parse_screen_key(_ns_sess *s,char c) {
|
|||
s the session in question
|
||||
<- error code */
|
||||
|
||||
int ns_parse_screenrc(_ns_sess *s) {
|
||||
int
|
||||
ns_parse_screenrc(_ns_sess * s)
|
||||
{
|
||||
int fd = -1;
|
||||
char *rc = NULL;
|
||||
char _e = '\0', _l = '\0', *esc = NULL;
|
||||
|
@ -1597,14 +1641,16 @@ int ns_parse_screenrc(_ns_sess *s) {
|
|||
if (*p2 == '\\') {
|
||||
p2++;
|
||||
if (*p2) /* sanity check */
|
||||
p2++; }
|
||||
else {
|
||||
p2++;
|
||||
} else {
|
||||
if (*p2 == '\"')
|
||||
f = 1 - f;
|
||||
if (!f && *p2 == '#') /* comment, kill to EOL */
|
||||
*p2 = '\0';
|
||||
else
|
||||
p2++; }}
|
||||
p2++;
|
||||
}
|
||||
}
|
||||
|
||||
if (strlen(p)) /* any commands in line? */
|
||||
ns_parse_screen_cmd(s, p);
|
||||
|
@ -1623,7 +1669,8 @@ int ns_parse_screenrc(_ns_sess *s) {
|
|||
close(fd);
|
||||
if (rc)
|
||||
free(rc);
|
||||
return NS_FAIL; }
|
||||
return NS_FAIL;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -1643,8 +1690,7 @@ ns_parse_screen_msg(_ns_sess * screen, char *p)
|
|||
_ns_efuns *efuns;
|
||||
_ns_disp *disp;
|
||||
char *p2, *p3, *d;
|
||||
int ma, mi, mu,
|
||||
n, ret = NS_SUCC,type;
|
||||
int ma, mi, mu, n, ret = NS_SUCC, type;
|
||||
|
||||
if (!p)
|
||||
return NS_FAIL;
|
||||
|
@ -1658,7 +1704,8 @@ ns_parse_screen_msg(_ns_sess * screen, char *p)
|
|||
|
||||
if (type == NS_SCREEN_ST_CLR) {
|
||||
NS_IF_EFUN_EXISTS(efuns, screen, NULL, err_msg)
|
||||
ret = efuns->err_msg(NULL, type,""); }
|
||||
ret = efuns->err_msg(NULL, type, "");
|
||||
}
|
||||
/* a screen display can disappear because the program in it dies, or
|
||||
because we explicitly ask screen to kill the display. in the latter
|
||||
case, screen messages upon success. rather than explicitly killing
|
||||
|
@ -1671,8 +1718,8 @@ ns_parse_screen_msg(_ns_sess * screen, char *p)
|
|||
fprintf(stderr, NS_PREFIX "ns_parse_screen_msg: window kill detected.\n");
|
||||
#endif
|
||||
ret = ns_upd_stat(screen);
|
||||
p=NULL; }
|
||||
else if(!strcmp(p,"New screen...")||!strncmp(p,"msgwait",strlen("msgwait"))||!strncmp(p,"msgminwait",strlen("msgminwait")))
|
||||
p = NULL;
|
||||
} else if (!strcmp(p, "New screen...") || !strncmp(p, "msgwait", strlen("msgwait")) || !strncmp(p, "msgminwait", strlen("msgminwait")))
|
||||
p = NULL;
|
||||
else if (sscanf(p, NS_SCREEN_VERSION, &p3, &ma, &mi, &mu, &p2, &d) == 6) {
|
||||
if (!strcmp("en", p3))
|
||||
|
@ -1682,8 +1729,7 @@ ns_parse_screen_msg(_ns_sess * screen, char *p)
|
|||
#ifdef NS_DEBUG
|
||||
fprintf(stderr, NS_PREFIX "ns_parse_screen_msg: scre%s %d.%2d.%2d %s a/o %s\n", p3, ma, mi, mu, p2, d);
|
||||
#endif
|
||||
}
|
||||
else if(!strcmp(p,NS_SCREEN_NO_DEBUG))
|
||||
} else if (!strcmp(p, NS_SCREEN_NO_DEBUG))
|
||||
p = "debug info was not compiled into \"screen\"...";
|
||||
else if (!strncmp(p, NS_SCREEN_DK_CMD, strlen(NS_SCREEN_DK_CMD))) {
|
||||
p[strlen(p) - 1] = '\0';
|
||||
|
@ -1926,7 +1972,8 @@ ns_parse_screen(_ns_sess * screen, int force, int width, char *p)
|
|||
#ifdef NS_DEBUG
|
||||
fprintf(stderr, NS_PREFIX "parse_screen: sending NS_SCREEN_INIT with prefix %d...\n", screen->escape);
|
||||
#endif
|
||||
ret=ns_screen_command(screen,NS_SCREEN_INIT); }
|
||||
ret = ns_screen_command(screen, NS_SCREEN_INIT);
|
||||
}
|
||||
#if (NS_SCREEN_UPD_FREQ>0)
|
||||
else if ((t2 - screen->timestamp) > NS_SCREEN_UPD_FREQ) {
|
||||
(void) ns_upd_stat(screen);
|
||||
|
|
54
src/menus.c
54
src/menus.c
|
@ -1233,8 +1233,8 @@ menu_action(menuitem_t *item)
|
|||
fputs("\n", stderr);
|
||||
}
|
||||
# endif
|
||||
(void)ns_screen_command(TermWin.screen,item->action.string); }
|
||||
else
|
||||
(void) ns_screen_command(TermWin.screen, item->action.string);
|
||||
} else
|
||||
#endif
|
||||
tt_write((unsigned char *) item->action.string, strlen(item->action.string));
|
||||
break;
|
||||
|
@ -1294,13 +1294,16 @@ menu_invoke_by_title(int x, int y, Window win, char *title, Time timestamp)
|
|||
<- error code */
|
||||
|
||||
int
|
||||
menu_tab(void *xd,char *sc[],int nsc,char *b,size_t l,size_t m) {
|
||||
menu_tab(void *xd, char *sc[], int nsc, char *b, size_t l, size_t m)
|
||||
{
|
||||
int n, n2 = 0;
|
||||
|
||||
for (n = 0; n < nsc; n++) { /* second tab? cycle. */
|
||||
if ((!strcasecmp(b, sc[n])) && (n < nsc - 1) && !strncasecmp(b, sc[n + 1], l)) {
|
||||
n2 = n + 1;
|
||||
break; }}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (n = n2; n < nsc; n++) {
|
||||
if (!strncasecmp(b, sc[n], l)) {
|
||||
|
@ -1308,9 +1311,13 @@ menu_tab(void *xd,char *sc[],int nsc,char *b,size_t l,size_t m) {
|
|||
if (strlen(sc[n]) >= m) /* buffer would overflow => fail */
|
||||
return -1;
|
||||
strcpy(b, sc[n]);
|
||||
return 0; }}}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return -1; }
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* open a dialog. this is a bit of a hack and should really resize otf.
|
||||
xd extra-data (userdef) for inp_tab
|
||||
|
@ -1346,15 +1353,16 @@ menu_dial(void *xd, char *prompt, int maxlen, char **retstr,int (*inp_tab)(void
|
|||
maxlen = 0;
|
||||
retstr = NULL;
|
||||
if ((b = strdup("Press \"Return\" to continue...")) == NULL)
|
||||
return ret; }
|
||||
else {
|
||||
return ret;
|
||||
} else {
|
||||
if (((b = malloc(maxlen + 1)) == NULL))
|
||||
return ret;
|
||||
if (*retstr) {
|
||||
strncpy(b, *retstr, maxlen);
|
||||
b[maxlen]='\0'; }
|
||||
else
|
||||
b[0]='\0'; }
|
||||
b[maxlen] = '\0';
|
||||
} else
|
||||
b[0] = '\0';
|
||||
}
|
||||
|
||||
if ((m = menu_create(prompt))) {
|
||||
for (l = 0; l < menu_list->nummenus; l++) { /* copycat font entry to */
|
||||
|
@ -1365,7 +1373,9 @@ menu_dial(void *xd, char *prompt, int maxlen, char **retstr,int (*inp_tab)(void
|
|||
#ifdef MULTI_CHARSET
|
||||
m->fontset = menu_list->menus[l]->fontset;
|
||||
#endif
|
||||
break; }}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ((i = menuitem_create("..."))) {
|
||||
int h;
|
||||
|
@ -1378,8 +1388,8 @@ menu_dial(void *xd, char *prompt, int maxlen, char **retstr,int (*inp_tab)(void
|
|||
if (i->len > l)
|
||||
l = XTextWidth(m->font, i->text, i->len);
|
||||
else
|
||||
l=XTextWidth(m->font,prompt,l); }
|
||||
else
|
||||
l = XTextWidth(m->font, prompt, l);
|
||||
} else
|
||||
l = 200;
|
||||
|
||||
menuitem_set_action(i, MENUITEM_STRING, "error");
|
||||
|
@ -1388,8 +1398,7 @@ menu_dial(void *xd, char *prompt, int maxlen, char **retstr,int (*inp_tab)(void
|
|||
|
||||
do {
|
||||
do {
|
||||
while(!XPending(Xdisplay))
|
||||
;
|
||||
while (!XPending(Xdisplay));
|
||||
XNextEvent(Xdisplay, &ev);
|
||||
} while (ev.type != KeyPress);
|
||||
|
||||
|
@ -1403,17 +1412,18 @@ menu_dial(void *xd, char *prompt, int maxlen, char **retstr,int (*inp_tab)(void
|
|||
if (ch >= ' ') {
|
||||
if (l < maxlen) {
|
||||
b[l + 1] = '\0';
|
||||
b[l] =ch; }}
|
||||
else if((ch=='\n')||(ch=='\r'))
|
||||
b[l] = ch;
|
||||
}
|
||||
} else if ((ch == '\n') || (ch == '\r'))
|
||||
f = 1;
|
||||
else if (ch == '\x08') {
|
||||
if (maxlen && l)
|
||||
b[--l]='\0'; }
|
||||
else if((ch=='\t')&&inp_tab) {
|
||||
b[--l] = '\0';
|
||||
} else if ((ch == '\t') && inp_tab) {
|
||||
if (!tab)
|
||||
tab = l;
|
||||
inp_tab(xd,b,tab,maxlen); }
|
||||
else if(ch=='\x1b')
|
||||
inp_tab(xd, b, tab, maxlen);
|
||||
} else if (ch == '\x1b')
|
||||
f = 2;
|
||||
i->len = strlen(b);
|
||||
menu_draw(m);
|
||||
|
|
|
@ -1566,12 +1566,10 @@ parse_toggles(char *buff, void *state)
|
|||
|
||||
} else if (!BEG_STRCASECMP(buff, "buttonbar")) {
|
||||
if (bool_val) {
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 1);
|
||||
);
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 1););
|
||||
rs_buttonbars = 1; /* Reset for future use. */
|
||||
} else {
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 0);
|
||||
);
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 0););
|
||||
rs_buttonbars = 1; /* Reset for future use. */
|
||||
}
|
||||
|
||||
|
@ -3057,11 +3055,9 @@ post_parse(void)
|
|||
specified. If specified, it will either become 3 (on) or 0 (off). */
|
||||
if (rs_buttonbars != 1) {
|
||||
if (rs_buttonbars) {
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 1);
|
||||
);
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 1););
|
||||
} else {
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 0);
|
||||
);
|
||||
FOREACH_BUTTONBAR(bbar_set_visible(bbar, 0););
|
||||
}
|
||||
rs_buttonbars = 1; /* Reset for future use. */
|
||||
}
|
||||
|
|
|
@ -614,7 +614,7 @@ check_image_ipc(unsigned char reset)
|
|||
print_error("ImageClass \"%s\" is not defined in Enlightenment. Disallowing \"auto\" mode for this image.\n", iclass);
|
||||
image_mode_fallback(i);
|
||||
} else if (strstr(reply, "Error")) {
|
||||
print_error("Looks like this version of Enlightenment doesn't support the IPC commands I need. Disallowing \"auto\" mode for all images.\n");
|
||||
print_error
|
||||
/* *INDENT-OFF* */
|
||||
FOREACH_IMAGE(
|
||||
if (image_mode_is(idx, MODE_AUTO)) {
|
||||
|
@ -629,6 +629,7 @@ check_image_ipc(unsigned char reset)
|
|||
}
|
||||
);
|
||||
/* *INDENT-ON* */
|
||||
("Looks like this version of Enlightenment doesn't support the IPC commands I need. Disallowing \"auto\" mode for all images.\n");
|
||||
FREE(reply);
|
||||
checked = 2;
|
||||
return 0;
|
||||
|
|
|
@ -269,8 +269,7 @@ lookup_key(XEvent * ev)
|
|||
(void) ns_parse_screen_key(TermWin.screen, kbuf[0]);
|
||||
LK_RET();
|
||||
}
|
||||
}
|
||||
else if (TermWin.screen&&TermWin.screen->escape==kbuf[0]) {
|
||||
} else if (TermWin.screen && TermWin.screen->escape == kbuf[0]) {
|
||||
escreen_escape = 1;
|
||||
LK_RET();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue