engine/src/OpmlParser.cpp
changeset 103 520291e28460
parent 35 66c5303f3610
child 109 223f270fa7ff
--- a/engine/src/OpmlParser.cpp	Sat Apr 03 11:47:26 2010 +0100
+++ b/engine/src/OpmlParser.cpp	Sat Apr 03 12:02:32 2010 +0100
@@ -96,7 +96,15 @@
 		if(str.CompareF(KTagOutline) == 0) {
 			iOpmlState = EStateOpmlOutline;
 		}
-		break;
+		
+		// there are two variations on OPML, where the <outline> tags sit either
+		// directly below <body>, or inside a collective <body> <outline>
+		// by checking if the <body> <outline> has arguments, we can support both
+		// by falling through to the nextstate
+		if (aAttributes.Count() == 0)
+			{
+			break;
+			}
 	case EStateOpmlOutline:
 		// <body> <outline> <outline...
 		if(str.CompareF(KTagOutline) == 0) {