directx9 mode errror

my project is run ok on opengl,
but when i choose directx9 mode, the main window is not opened

i debug the code,it run to the code:

PT(GraphicsPipe) GraphicsPipeSelection::
make_default_pipe()

// Couldn’t find a matching pipe type; choose the first one on the list.
for (ti = _pipe_types.begin(); ti != _pipe_types.end(); ++ti) {
const PipeType &ptype = (*ti);
PT(GraphicsPipe) pipe = (*ptype._constructor)(); //stop here,wait for something
if (pipe != (GraphicsPipe *)NULL) {
return pipe;
}
}

bool wdxGraphicsPipe9::
find_all_card_memavails() {

if (dwVidMemTotal == 0) { // unreliable driver
dwVidMemTotal = UNKNOWN_VIDMEM_SIZE;
} else {
if (!ISPOW2(dwVidMemTotal)) {
// assume they wont return a proper max value, so round up to next pow
// of 2
UINT count = 0;
while ((dwVidMemTotal >> count) != 0x0) {
count++; // *********************************************** dwVidMemTotal is very large,anything error?
}
dwVidMemTotal = (1 << count);
}
}

in windows system :
while ((unsigned long)((unsigned long long )dwVidMemTotal >> count) != 0x0) {

Hmm, odd, I’d like to see what values are being printed for dwVidMemTotal and count during that loop.

As a workaround, though, you can set “dx-count-all-cards-memory false” in Config.prc to disable this code.