Description: support older pugixml without string_view support
 (until we have it in debian)
Author: Shengqi Chen <harry@debian.org>
Forwarded: not-needed
Last-Update: 2025-09-18
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/src/rfl/xml/Writer.cpp
+++ b/src/rfl/xml/Writer.cpp
@@ -79,7 +79,7 @@
 Writer::OutputVarType Writer::add_value_to_array_impl(
     const std::string& _str, OutputArrayType* _parent) const noexcept {
   auto node_child =
-      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_));
+      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_.data()));
   node_child->append_child(pugi::node_pcdata).set_value(_str.c_str());
   return OutputVarType(node_child);
 }
@@ -88,14 +88,14 @@
     const std::string_view& _name, const std::string& _str,
     OutputObjectType* _parent, const bool _is_attribute) const noexcept {
   if (_is_attribute) {
-    _parent->node_->append_attribute(_name) = _str.c_str();
+    _parent->node_->append_attribute(_name.data()) = _str.c_str();
     return OutputVarType(_parent->node_);
   } else if (_name == XML_CONTENT) {
     _parent->node_->append_child(pugi::node_pcdata).set_value(_str.c_str());
     return OutputVarType(_parent->node_);
   } else {
     auto node_child =
-        Ref<pugi::xml_node>::make(_parent->node_->append_child(_name));
+        Ref<pugi::xml_node>::make(_parent->node_->append_child(_name.data()));
     node_child->append_child(pugi::node_pcdata).set_value(_str.c_str());
     return OutputVarType(node_child);
   }
@@ -104,7 +104,7 @@
 Writer::OutputObjectType Writer::add_object_to_array(
     const size_t _size, OutputArrayType* _parent) const noexcept {
   auto node_child =
-      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_));
+      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_.data()));
   return OutputObjectType(node_child);
 }
 
@@ -112,14 +112,14 @@
     const std::string_view& _name, const size_t _size,
     OutputObjectType* _parent) const noexcept {
   auto node_child =
-      Ref<pugi::xml_node>::make(_parent->node_->append_child(_name));
+      Ref<pugi::xml_node>::make(_parent->node_->append_child(_name.data()));
   return OutputObjectType(node_child);
 }
 
 Writer::OutputVarType Writer::add_null_to_array(
     OutputArrayType* _parent) const noexcept {
   auto node_child =
-      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_));
+      Ref<pugi::xml_node>::make(_parent->node_->append_child(_parent->name_.data()));
   return OutputVarType(node_child);
 }
 
@@ -132,7 +132,7 @@
     return OutputVarType(_parent->node_);
   } else {
     auto node_child =
-        Ref<pugi::xml_node>::make(_parent->node_->append_child(_name));
+        Ref<pugi::xml_node>::make(_parent->node_->append_child(_name.data()));
     return OutputVarType(node_child);
   }
 }
