   glUniform1f not working
  I'm using glUniform1f to pass a float uniform to my vertex shader.However, instead of the float value specified in glUniform1f, anothervalue is used. This value is the always the same when using the samevalue in glUniform1f, but it is not the value I specified.The relevant code is the following:    glUseProgram(Race_gl_program0);    Race_render_uniform_time = glGetUniformLocation(Race_gl_program0,"time");    glUniform1f(Race_render_uniform_time,1.0f); //ERROR    float tempfloat;    glGetUniformfv(Race_gl_program0,Race_render_uniform_time,&tempfloat);    printf("%f\n",tempfloat); // output depends on glUniform1f, see below    int tempint;    tempint = glGetError();    printf("%i\n",tempint); // prints 0    printf("%i\n",Race_gl_program0); // prints 1    printf("%i\n",Race_render_uniform_time); // prints 0The vertex shader:#version 110//removing #version doesnt change anythinguniform float time;void main(){vec4 v = gl_Vertex;v.y *= time;gl_Position = gl_ModelViewProjectionMatrix * v;gl_FrontColor = gl_Color;}The uniform value which is used in the shader and returned byglGetUniformfv depends on the value sent by glUniform1f:value sent // value used1.0f  0.0000000.8f  -0.0000000.7f  36893488147419103232.0000000.65f -2.0000000.6f  2.0000000.5f  0.0000000.2271f    -36893488147419103232.0000000.227f0.0000000.0f  0.000000I am using OpenGL 3.2.0 on Ubuntu 9.10 with the NVIDIA 195.36.15driver (it didn't work with the driver 185.something I had beforeeither).I already tried insertingPFNGLUNIFORM1FPROC glUniform1f = (PFNGLUNIFORM1FPROC)glXGetProcAddress((GLubyte*)"glUniform1f");into my context creation which didn't help, as well as#define DGL_GLEXT_PROTOTYPESWhat am I doing wrong here?   
  Hmm that's a tough one. Everything you've shown looks right (I even cut it into a quick test program and I read back the float correctly).So its either something you're doing that you haven't shown, or a wonky driver.   ;  I've replaced it with glUniform1fv now, but I have still no idea what was wrong.   