CV_IMPL int cvInitSystem( int argc, char** argv )
{
static int wasInitialized = 0;
+ static bool hasError = false;
// check initialization status
if( !wasInitialized )
{
- gtk_init( &argc, &argv );
+ if (!gtk_init_check(&argc, &argv))
+ {
+ hasError = true;
+ wasInitialized = true;
+ CV_Error(Error::StsError, "Can't initialize GTK backend");
+ }
+
setlocale(LC_NUMERIC,"C");
#ifdef HAVE_OPENGL
- gtk_gl_init(&argc, &argv);
+ if (!gtk_gl_init_check(&argc, &argv))
+ {
+ hasError = true;
+ wasInitialized = true;
+ CV_Error(Error::StsError, "Can't initialize GTK-OpenGL backend");
+ }
#endif
wasInitialized = 1;
}
+ if (hasError)
+ CV_Error(Error::StsError, "GTK backend is not available");
return 0;
}