about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2010-04-09T21·30+0000
committerLudovic Courtès <ludo@gnu.org>2010-04-09T21·30+0000
commitaac5fcfbb54ff64c593d8919f7f52025415ea996 (patch)
treeb9c24e1dcd7381ba2366e08cbdaf72eb04c9a5be
parent09381cccffe675ccbc8d183f043788f99dc018cd (diff)
Re-add `drvPath' and `outPath' attributes to <derivation> XML nodes.
This fixes a regression introduced in r20882 ("Add source location
information to the XML output.").

* src/libexpr/expr-to-xml.cc (nix::printTermAsXML): Dereference the
  attribute RHS from "drvPath" and "outPath".
-rw-r--r--src/libexpr/expr-to-xml.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/libexpr/expr-to-xml.cc b/src/libexpr/expr-to-xml.cc
index 5857537d7501..1e59eebfc497 100644
--- a/src/libexpr/expr-to-xml.cc
+++ b/src/libexpr/expr-to-xml.cc
@@ -124,15 +124,17 @@ static void printTermAsXML(Expr e, XMLWriter & doc, PathSet & context,
 
             XMLAttrs xmlAttrs;
             Path outPath, drvPath;
-            
-            a = attrs.get(toATerm("drvPath"));
+
+            aRHS = attrs.get(toATerm("drvPath"));
+            matchAttrRHS(aRHS, a, pos);
             if (matchStr(a, drvPath, context))
                 xmlAttrs["drvPath"] = drvPath;
-        
-            a = attrs.get(toATerm("outPath"));
+
+            aRHS = attrs.get(toATerm("outPath"));
+            matchAttrRHS(aRHS, a, pos);
             if (matchStr(a, outPath, context))
                 xmlAttrs["outPath"] = outPath;
-        
+
             XMLOpenElement _(doc, "derivation", xmlAttrs);
 
             if (drvsSeen.find(e) == drvsSeen.end()) {