diff options
| author | Jon A. Cruz <jon@joncruz.org> | 2006-04-03 03:15:17 +0000 |
|---|---|---|
| committer | joncruz <joncruz@users.sourceforge.net> | 2006-04-03 03:15:17 +0000 |
| commit | b6f389536a636e854124a4a66855d1ef2a8159ea (patch) | |
| tree | bd295a1b0405703485c776ea411ebae8ef8923ee /src/color-profile.cpp | |
| parent | Initial support of color-profile on <image> (diff) | |
| download | inkscape-b6f389536a636e854124a4a66855d1ef2a8159ea.tar.gz inkscape-b6f389536a636e854124a4a66855d1ef2a8159ea.zip | |
Fixed to handle relative file paths
(bzr r403)
Diffstat (limited to 'src/color-profile.cpp')
| -rw-r--r-- | src/color-profile.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/color-profile.cpp b/src/color-profile.cpp index 049bd14ec..b9e42ccbd 100644 --- a/src/color-profile.cpp +++ b/src/color-profile.cpp @@ -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 } } |
