diff --git a/src/sbbs3/js_uifc.c b/src/sbbs3/js_uifc.c index 1b69e35806b01ebf19ba7a06f1d92157c6e5cffb..73859ad91d5c40149187212bcfc53d50e4c4c795 100644 --- a/src/sbbs3/js_uifc.c +++ b/src/sbbs3/js_uifc.c @@ -44,6 +44,7 @@ struct list_ctx_private { int top; int width; }; + struct showbuf_ctx_private { int cur; int bar; diff --git a/src/uifc/uifc32.c b/src/uifc/uifc32.c index 55b4599d4a2e436eb203d7ab8f08b4f026d26acb..e520ed468788bf63fce4a0a9d83109061f92a625 100644 --- a/src/uifc/uifc32.c +++ b/src/uifc/uifc32.c @@ -931,10 +931,7 @@ int ulist(int mode, int left, int top, int width, int *cur, int *bar (*cur)=(*bar); i=(*cur)-(*bar); if(i+(height-vbrdrsize-1)>=opts) { - i=opts-(height-vbrdrsize); - if(i<0) - i=0; - (*cur)=i+(*bar); + (*bar)=(height-vbrdrsize)-(opts-cur); } } if((*cur)<0)