diff -rN -u old-openme-developers/src/GmerlinEffects/GmerlinFactory.cxx new-openme-developers/src/GmerlinEffects/GmerlinFactory.cxx
--- old-openme-developers/src/GmerlinEffects/GmerlinFactory.cxx	2009-04-21 00:13:05.000000000 +0200
+++ new-openme-developers/src/GmerlinEffects/GmerlinFactory.cxx	2009-04-21 00:13:05.000000000 +0200
@@ -22,6 +22,10 @@
 #include "MainFilterFactory.H"
 #include "nle.h"
 
+extern "C" {
+#include <gmerlin/utils.h>
+}
+
 #include <iostream>
 
 namespace nle
@@ -29,7 +33,12 @@
 
 GmerlinFactory::GmerlinFactory( IEffectMenu* menu )
 {
+	char * config_file;
+	config_file = bg_search_file_read("openmovieeditor", "config.xml");
 	m_cfg_registry = bg_cfg_registry_create();
+	bg_cfg_registry_load(m_cfg_registry, config_file);
+	if ( config_file )
+		free(config_file);
 	m_plugin_cfg = bg_cfg_registry_find_section( m_cfg_registry, "plugins" );
 	m_plugin_registry = bg_plugin_registry_create( m_plugin_cfg );
 	m_filters = bg_plugin_registry_get_plugins( m_plugin_registry, BG_PLUGIN_FILTER_VIDEO, BG_PLUGIN_ALL );
@@ -51,6 +60,12 @@
 
 GmerlinFactory::~GmerlinFactory()
 {
+        char * config_file;
+        config_file = bg_search_file_write("openmovieeditor", "config.xml");
+        bg_cfg_registry_save(m_cfg_registry, config_file);
+        if ( config_file )
+        	free(config_file);
+
 	bg_plugin_registry_free_plugins( m_filters );
 	bg_plugin_registry_destroy( m_plugin_registry );
 	bg_cfg_registry_destroy( m_cfg_registry );
