Transparency: graphic card dependent ?

Hi!
I am rendering a polygonal model with OpenGL’s transparency capability.
Here is my code fragement:

// As I want to render a glass-like model
if( bTransparency )
{
glEnable(GL_BLEND);
glBlendFunc( GL_SRC_ALPHA,
GL_ONE_MINUS_SRC_ALPHA );
}

// Render the model

//…for each polygon vertex

if( bTransparency )
glColor4f( fRed,fGreen,fBlue, fAlpha );
else
glColor4f( fRed,fGreen,fBlue);

The approach is quite straightforward and in fact it works on my OLD graphic version:
ELSA Synergy (I)

But when I upgrade my graohic card to ELSA Synergy II, above code NO LONGER works!

I don’t have idea about this situation. Is it a software-side problem or a hardward-side problem? Someone tells me it’s probably the problem of graphic driver but I need more suggestion in this problem.

Any comment?

Thanks!

Sorry, the code in the color-assignment should be:

if( bTransparency )
{
glColor4f( fRed,fGreen,fBlue, fAlpha );
}
else
{
glColor3f( fRed,fGreen,fBlue );
}