X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=XMLTree.cpp;h=bb861a9765e31a34e4114013c26abbeb093b987f;hb=0f2d33d4ee4291d61750769c2918263c7e485ffa;hp=f155d3e8e18ec4c55f3171fdc0b19894e2e7fdc4;hpb=eb43419905c2956230f4c773a0b5b6fa3ff694d8;p=SXSI%2FXMLTree.git diff --git a/XMLTree.cpp b/XMLTree.cpp index f155d3e..bb861a9 100644 --- a/XMLTree.cpp +++ b/XMLTree.cpp @@ -539,6 +539,9 @@ treeNode XMLTree::TaggedFoll(treeNode x, TagType tag) } int r, s; + if (x == Root() || (next_sibling(Par,x) == -1 )) + return NULLT; + r = (int) Tags->rank(tag, node2tagpos(next_sibling(Par, x))-1); s = (int) Tags->select(tag, r+1); // select returns -1 in case that there is no r+1-th tag. if (s==-1) return NULLT;