vector<xmlNode *> new_nodes;
for (auto it : subdirectives) {
+ if (it == NULL) {
+ continue;
+ }
xmlNode *new_node;
xmlDOMWrapCloneNode(NULL, node->doc, node, &new_node, node->doc, NULL, 1, 0);
it->process(new_node, clean);
const vector<string> &alternatives)
: Clone(subdirectives_subs)
{
+ unsigned jx = 0;
for (unsigned ix = 0; ix < subdirectives_subs.size(); ++ix) {
- string value = alternatives[ix % alternatives.size()];
+ if (subdirectives_subs[ix] == NULL) {
+ continue;
+ }
+ string value = alternatives[jx++ % alternatives.size()];
subdirectives_subs[ix]->substitution_map.insert(make_pair(
attribute,
new Replace { value }));