On Sun, 2012-02-26 at 11:42 -0500, Edward Diehl wrote:
> I rebuilt linuxsampler (libgig, qsampler) all with SVN 2322, but still the
> state is not restored.  My state.ttl file says:
> 
> <>
>       a pset:Preset ;
>       lv2:appliesTo <http://linuxsampler.org/plugins/linuxsampler> .
> 
> manifest.ttl has this:
> 
> <state.ttl>
>       a pset:Preset ;
>       rdfs:seeAlso <state.ttl> ;
>       lv2:appliesTo <http://linuxsampler.org/plugins/linuxsampler> .
> 
> I do not see any mention of the gig file I had previously loaded.  
> 
> Also, tried the linuxsampler plugin in Qtractor, but this somehow causes an
> immediate segfault.  I've been having this problem since Qtractor 5.3. 
> I'll report the details to the Qtractor forum.

Sorry, I broke something.  Patch attached.

This should match latest SVN of LV2 stuff and Ardour.  I havn't tested
it and don't know the state of QTractor at the moment.

-dr

Index: src/hostplugins/lv2/PluginLv2.cpp
===================================================================
--- src/hostplugins/lv2/PluginLv2.cpp	(revision 2323)
+++ src/hostplugins/lv2/PluginLv2.cpp	(working copy)
@@ -154,7 +154,7 @@
                   uri_to_id(NULL, NS_LS "state-file"),
                   path,
                   strlen(path) + 1,
-                  uri_to_id(NULL, LV2_STATE_PATH_URI),
+                  uri_to_id(NULL, LV2_ATOM_PATH_URI),
                   LV2_STATE_IS_PORTABLE);
 
             free(path);
@@ -195,7 +195,7 @@
             &size, &type, &flags);
         if (value) {
             // Restore from state-file
-            assert(type == uri_to_id(NULL, LV2_STATE_PATH_URI));
+            assert(type == uri_to_id(NULL, LV2_ATOM_PATH_URI));
             const String path((const char*)value);
             dmsg(2, ("linuxsampler: restoring from file %s\n", path.c_str()));
             std::ifstream in(path.c_str());
Index: src/hostplugins/lv2/lv2_state.h
===================================================================
--- src/hostplugins/lv2/lv2_state.h	(revision 2323)
+++ src/hostplugins/lv2/lv2_state.h	(working copy)
@@ -33,10 +33,11 @@
 extern "C" {
 #endif
 
+#define LV2_ATOM_URI  "http://lv2plug.in/ns/ext/atom";
 #define LV2_STATE_URI "http://lv2plug.in/ns/ext/state";
 
+#define LV2_ATOM_PATH_URI       LV2_ATOM_URI  "#Path"
 #define LV2_STATE_INTERFACE_URI LV2_STATE_URI "#Interface"
-#define LV2_STATE_PATH_URI      LV2_STATE_URI "#Path"
 #define LV2_STATE_MAP_PATH_URI  LV2_STATE_URI "#mapPath"
 #define LV2_STATE_MAKE_PATH_URI LV2_STATE_URI "#makePath"
 
------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Linuxsampler-devel mailing list
Linuxsampler-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel

Reply via email to