mlt_repository.c: fix to previous string const fix in mlt_repository_languages
[melted] / src / framework / mlt_repository.c
index eab2777..bdadb28 100644 (file)
@@ -266,7 +266,7 @@ mlt_properties mlt_repository_metadata( mlt_repository self, mlt_service_type ty
        return metadata;
 }
 
-static char *getenv_locale()
+static const char *getenv_locale()
 {
        char *s = getenv( "LANGUAGE" );
        if ( s && s[0] )
@@ -292,10 +292,11 @@ mlt_properties mlt_repository_languages( mlt_repository self )
        if ( languages )
                return languages;
                
-       const char *locale = getenv_locale();
        languages = mlt_properties_new();
+       char *locale = getenv_locale();
        if ( locale )
        {
+               locale = strdup( locale );
                mlt_tokeniser tokeniser = mlt_tokeniser_init();
                int count = mlt_tokeniser_parse_new( tokeniser, locale, ":" );
                if ( count )
@@ -317,6 +318,7 @@ mlt_properties mlt_repository_languages( mlt_repository self )
                {
                        mlt_properties_set( languages, "0", "en" );
                }
+               free( locale );
                mlt_tokeniser_close( tokeniser );
        }
        else