git: a3f92013e9de - main - audio/ardour: unbreak build with boost-1.85

From: Christoph Moench-Tegeder <cmt_at_FreeBSD.org>
Date: Thu, 03 Oct 2024 20:49:25 UTC
The branch main has been updated by cmt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a3f92013e9de34028bcffceba68489a8b7a6a27d

commit a3f92013e9de34028bcffceba68489a8b7a6a27d
Author:     Christoph Moench-Tegeder <cmt@FreeBSD.org>
AuthorDate: 2024-10-03 20:48:45 +0000
Commit:     Christoph Moench-Tegeder <cmt@FreeBSD.org>
CommitDate: 2024-10-03 20:48:45 +0000

    audio/ardour: unbreak build with boost-1.85
    
    Patch from upstream
---
 .../patch-libs_surfaces_websockets_message.cc      | 32 ++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/audio/ardour/files/patch-libs_surfaces_websockets_message.cc b/audio/ardour/files/patch-libs_surfaces_websockets_message.cc
new file mode 100644
index 000000000000..8c10908bc672
--- /dev/null
+++ b/audio/ardour/files/patch-libs_surfaces_websockets_message.cc
@@ -0,0 +1,32 @@
+commit f94bde59d740d65e67c5cd13af4d7ea51453aeaa
+Author: Fabio Pesari <posta@parallelo.eu>
+Date:   Sun Sep 15 11:04:30 2024 +0200
+
+    Fix for Boost 1.8.5
+    
+    Recent boost prevents calls to `get_child` with temporary
+    default values.
+
+diff --git libs/surfaces/websockets/message.cc libs/surfaces/websockets/message.cc
+index eff8e48ac3..0aee14d0df 100644
+--- libs/surfaces/websockets/message.cc
++++ libs/surfaces/websockets/message.cc
+@@ -58,14 +58,16 @@ NodeStateMessage::NodeStateMessage (void* buf, size_t len)
+ 
+ 		_state = NodeState (root.get<std::string> ("node"));
+ 
+-		pt::ptree addr = root.get_child ("addr", pt::ptree ());
++		pt::ptree addr = pt::ptree ();
++		addr = root.get_child ("addr", addr);
+ 
+ 		for (pt::ptree::iterator it = addr.begin (); it != addr.end (); ++it) {
+ 			// throws if datatype not uint32_t
+ 			_state.add_addr (boost::lexical_cast<uint32_t> (it->second.data ()));
+ 		}
+ 
+-		pt::ptree val = root.get_child ("val", pt::ptree ());
++		pt::ptree val = pt::ptree ();
++		val = root.get_child ("val", val);
+ 
+ 		for (pt::ptree::iterator it = val.begin (); it != val.end (); ++it) {
+ 			std::string val = it->second.data ();