rem: WMScreen *scr = sPtr->view->screen;
add: WMScreen *scr; int minCoord, maxCoord, coord;
context: dragDivider(SplitView *sPtr, int clickY){    int divider;    WMView *view, *view1=NULL, *view2=NULL;    int y;    int ofsY;    int done;    int dragging;    int minCoord;    int maxCoord;    XEvent ev;    WMScreen *scr = sPtr->view->screen;    view = sPtr->view->childrenList;    divider = 0;    ofsY = 0;    y = 0;    done = 0;    while (view) {	y += view->size.height+DIVIDER_THICKNESS;	if (clickY < y) {	    /* offset from point where use clicked and the top of the 	     * divider */	    ofsY = clickY - y + DIVIDER_THICKNESS;	    view1 = view;	    view2 = view->nextSister;	    /* can't be NULL. It would mean the divider is at the bottom */	    assert(view2!=NULL);	    done = 1;	    break;	}	view = view->nextSister;	divider++;    }    assert(done);        minCoord = view1->pos.y;    maxCoord = view2->pos.y+view2->size.height-DIVIDER_THICKNESS;    if (sPtr->constrainProc)	(*sPtr->constrainProc)(sPtr, divider, &minCoord, &maxCoord);    done = 0;    dragging = 0;    while (!done) {	WMMaskEvent(scr->display, ButtonMotionMask|ButtonReleaseMask		    |ExposureMask, &ev);	switch (ev.type) {	 case ButtonRelease:	    done = 1;	    if (dragging) {		XFillRectangle(scr->display, sPtr->view->window, scr->ixorGC,			       0, y, sPtr->view->size.width,DIVIDER_THICKNESS);	    }	    break;	    	 case MotionNotify:	    if (dragging) {		XFillRectangle(scr->display, sPtr->view->window, scr->ixorGC,			       0, y, sPtr->view->size.width,DIVIDER_THICKNESS);	    }	    if (ev.xmotion.y-ofsY < minCoord)		y = minCoord;	    else if (ev.xmotion.y-ofsY > maxCoord)		y = maxCoord;	    else		y = ev.xmotion.y-ofsY;	    XFillRectangle(scr->display, sPtr->view->window, scr->ixorGC,			   0, y, sPtr->view->size.width, DIVIDER_THICKNESS);	    dragging = 1;	    break;	    	 default:	    WMHandleEvent(&ev);	    break;	}    }        if (dragging) {	int theight;		theight = view1->size.height + view2->size.height + DIVIDER_THICKNESS;		WMResizeWidget(view1->self, sPtr->view->size.width, y - view1->pos.y);		WMResizeWidget(view2->self, sPtr->view->size.width,		       theight - view1->size.height - DIVIDER_THICKNESS);	WMMoveWidget(view2->self, 0, 		     view1->pos.y+view1->size.height+DIVIDER_THICKNESS);    }}