Skip to content

Commit 20c9640

Browse files
committed
Merge pull request hpcc-systems#714 from richardkchapman/roxie-package-value
Package file format inconsistencies Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>
2 parents b19ae9b + 84d487a commit 20c9640

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

roxie/ccd/ccdstate.cpp

+7-5
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ class CSimpleSuperFileArray : public CInterface, implements ISimpleSuperFileEnqu
105105
{
106106
if (subFiles.isItem(num))
107107
{
108-
name.append(subFiles.item(num).queryProp("@val"));
108+
name.append(subFiles.item(num).queryProp("@value"));
109109
return true;
110110
}
111111
else
@@ -115,7 +115,7 @@ class CSimpleSuperFileArray : public CInterface, implements ISimpleSuperFileEnqu
115115
{
116116
ForEachItemIn(idx, subFiles)
117117
{
118-
if (stricmp(subFiles.item(idx).queryProp("@val"), subname))
118+
if (stricmp(subFiles.item(idx).queryProp("@value"), subname))
119119
return idx;
120120
}
121121
return NotFound;
@@ -124,7 +124,7 @@ class CSimpleSuperFileArray : public CInterface, implements ISimpleSuperFileEnqu
124124
{
125125
ForEachItemIn(idx, subFiles)
126126
{
127-
contents.append(subFiles.item(idx).queryProp("@val"));
127+
contents.append(subFiles.item(idx).queryProp("@value"));
128128
}
129129
return subFiles.length();
130130
}
@@ -238,14 +238,16 @@ class CRoxiePackage : extends CInterface, implements IRoxiePackage
238238
{
239239
IPropertyTree &env = envIterator->query();
240240
const char *id = env.queryProp("@id");
241-
const char *val = env.queryProp("@val");
241+
const char *val = env.queryProp("@value");
242+
if (!val)
243+
val = env.queryProp("@val"); // Historically we used val here - not sure why... other parts of package file used value
242244
if (id && val)
243245
mergedEnvironment->setProp(id, val);
244246
else
245247
{
246248
StringBuffer s;
247249
toXML(&env, s);
248-
throw MakeStringException(0, "PACKAGE_ERROR: Environment element missing id or val: %s", s.str());
250+
throw MakeStringException(0, "PACKAGE_ERROR: Environment element missing id or value: %s", s.str());
249251
}
250252
}
251253
Owned<IAttributeIterator> attrs = node->getAttributes();

0 commit comments

Comments
 (0)