Code

Fixed to handle relative file paths
authorjoncruz <joncruz@users.sourceforge.net>
Mon, 3 Apr 2006 03:15:17 +0000 (03:15 +0000)
committerjoncruz <joncruz@users.sourceforge.net>
Mon, 3 Apr 2006 03:15:17 +0000 (03:15 +0000)
src/color-profile.cpp

index 049bd14ecf7791cfc8bbb7474cecc3d279f96fc5..b9e42ccbdde34a3634e37034d727aa7ed81b240d 100644 (file)
@@ -137,7 +137,19 @@ static void colorprofile_set( SPObject *object, unsigned key, gchar const *value
                     // TODO open filename and URIs properly
                     //FILE* fp = fopen_utf8name( filename, "r" );
                     //LCMSAPI cmsHPROFILE   LCMSEXPORT cmsOpenProfileFromMem(LPVOID MemPtr, DWORD dwSize);
-                    cprof->profHandle = cmsOpenProfileFromFile( value, "r" );
+
+                    if ( !g_path_is_absolute(cprof->href) ) {
+                        // Try to open relative
+                        gchar* docbase = SP_DOCUMENT_BASE( SP_OBJECT_DOCUMENT(object) );
+                       gchar* fullname = g_build_filename( docbase ? docbase : ".", cprof->href, NULL );
+
+                        cprof->profHandle = cmsOpenProfileFromFile( fullname, "r" );
+
+                       g_free (fullname);
+                    } else {
+                        cprof->profHandle = cmsOpenProfileFromFile( cprof->href, "r" );
+                    }
+
 #endif // ENABLE_LCMS
                 }
             }