add: WMSelectListItem(bPtr->columns[0], -1); WMSetListPosition(bPtr->columns[0], 0);
context: WMSetBrowserPath(WMBrowser *bPtr, char *path){    int i;    char *str = wstrdup(path);    char *tmp, *retPtr = NULL;    int item;    WMListItem *listItem;    /* WMLoadBrowserColumnZero must be call first */    if (!bPtr->flags.loaded) {	return False;    }    removeColumn(bPtr, 1);    i = 0;    tmp = strtok(str, bPtr->pathSeparator);    while (tmp) {	/* select it in the column */        item = WMFindRowOfListItemWithTitle(bPtr->columns[i], tmp);	if (item<0) {            retPtr = &path[(int)(tmp - str)];	    break;	}	WMSelectListItem(bPtr->columns[i], item);	WMSetListPosition(bPtr->columns[i], item);	listItem = WMGetListItem(bPtr->columns[i], item);	if (!listItem || !listItem->isBranch) {	    break;	} 	/* load next column */	WMAddBrowserColumn(bPtr);	loadColumn(bPtr, i+1);		tmp = strtok(NULL, bPtr->pathSeparator);	i++;    }    free(str);    for (i = bPtr->usedColumnCount - 1;    	 (i > -1) && !WMGetListSelectedItem(bPtr->columns[i]);	 i--);    bPtr->selectedColumn = i;        if (bPtr->columnCount < bPtr->maxVisibleColumns) {	int i = bPtr->maxVisibleColumns - bPtr->columnCount;	int curUsedColumnCount = bPtr->usedColumnCount;	bPtr->usedColumnCount = bPtr->columnCount;	while (i--) {	    WMAddBrowserColumn(bPtr);	}	bPtr->usedColumnCount = curUsedColumnCount;    }    scrollToColumn(bPtr, bPtr->columnCount - bPtr->maxVisibleColumns, True);    return retPtr;}