diff --git a/source/de/anomic/data/wikiCode.java b/source/de/anomic/data/wikiCode.java
index 15d28a379..dbbed1696 100644
--- a/source/de/anomic/data/wikiCode.java
+++ b/source/de/anomic/data/wikiCode.java
@@ -311,7 +311,16 @@ public class wikiCode {
else if ((result.startsWith("||")) && (table)) {
line+="\t\t
0)?(result.indexOf("||",2)):(result.length());
- int propEnd=(result.indexOf("|",2)>0)?(result.indexOf("|",2)):(cellEnd);
+ int propEnd = 0;
+ //If resultOf("[[Image:") is less than propEnd, that means that there is no
+ //property for this cell, only an image. Without this, YaCy could get confused
+ //by a | in [[Image:picture.png|alt-text]] or [[Image:picture.png|alt-text]]
+ if(((propEnd = result.indexOf("|",2)) > 0)&&(!(result.indexOf("[[Image:",2) < propEnd))){
+ propEnd = result.indexOf("|",2);
+ }
+ else {
+ propEnd = cellEnd;
+ }
// both point at same place => new line
if (propEnd==cellEnd) {
propEnd=1;
@@ -747,7 +756,19 @@ public class wikiCode {
// if there are 2 arguments, write them into ALIGN and ALT
if ((p = kv.indexOf("|")) > 0) {
- align = " align=\"" + kv.substring(0, p) + "\"";
+ align = kv.substring(0, p);
+ //checking validity of value for align. Only non browser specific
+ //values get supported. Not supported: absmiddle, baseline, texttop
+ if ((align.equals("bottom"))||
+ (align.equals("center"))||
+ (align.equals("left"))||
+ (align.equals("middle"))||
+ (align.equals("right"))||
+ (align.equals("top")))
+ {
+ align = " align=\"" + align + "\"";
+ }
+ else align = "";
alt = " alt=\"" + kv.substring(p + 1) + "\"";
}
|