Index: libs/ardour/lv2_plugin.cc
===================================================================
--- libs/ardour/lv2_plugin.cc	(revision 11376)
+++ libs/ardour/lv2_plugin.cc	(working copy)
@@ -465,7 +465,8 @@
 LV2Plugin::scratch_dir() const
 {
 	return Glib::build_filename(
-		_session.plugins_dir(), _insert_id.to_s(), "scratch");
+		Glib::build_filename(_session.plugins_dir(), _insert_id.to_s()),
+		"scratch");
 }
 
 /** Directory for snapshots of files in the scratch directory. */
@@ -473,16 +474,17 @@
 LV2Plugin::file_dir() const
 {
 	return Glib::build_filename(
-		_session.plugins_dir(), _insert_id.to_s(), "files");
+		Glib::build_filename(_session.plugins_dir(), _insert_id.to_s()),
+		"files");
 }
 
 /** Directory to save state snapshot version @c num into. */
 const std::string
 LV2Plugin::state_dir(unsigned num) const
 {
-	return Glib::build_filename(_session.plugins_dir(),
-	                            _insert_id.to_s(),
-	                            string_compose("state%1", num));
+	return Glib::build_filename(
+		Glib::build_filename(_session.plugins_dir(),  _insert_id.to_s()),
+	        string_compose("state%1", num));
 }
 
 /** Implementation of state:makePath for files created at instantiation time.
@@ -780,10 +782,9 @@
 				prop->value()) << endmsg;
 		}
 
-		std::string state_file = Glib::build_filename(_session.plugins_dir(),
-		                                              _insert_id.to_s(),
-		                                              prop->value(),
-		                                              "state.ttl");
+		std::string state_file = Glib::build_filename(
+			Glib::build_filename(_session.plugins_dir(), _insert_id.to_s()),
+		        Glib::build_filename(prop->value(), "state.ttl"));
 
 		cout << "Loading LV2 state from " << state_file << endl;
 		LilvState* state = lilv_state_new_from_file(
