Index: applications/editors/josm/plugins/seachart/jrender/src/jrender/Jrender.java
===================================================================
--- applications/editors/josm/plugins/seachart/jrender/src/jrender/Jrender.java	(revision 32104)
+++ applications/editors/josm/plugins/seachart/jrender/src/jrender/Jrender.java	(revision 32105)
@@ -137,4 +137,8 @@
 	
 	public static void main(String[] args) throws Exception {
+		if (args.length < 5) {
+			System.err.println("Usage: java -jar jrender.jar <osm source directory> <tile directory> <zoom> <xtile> <ytile>");
+			System.exit(-1);
+		}
 		srcdir = args[0];
 		dstdir = args[1];
Index: applications/editors/josm/plugins/seachart/src/render/Rules.java
===================================================================
--- applications/editors/josm/plugins/seachart/src/render/Rules.java	(revision 32104)
+++ applications/editors/josm/plugins/seachart/src/render/Rules.java	(revision 32105)
@@ -155,7 +155,7 @@
 	}
 
-	static boolean hasAttribute(Obj obj, int idx, Att att) {
+	static boolean hasAttribute(Obj obj, Att att) {
 		AttMap atts;
-		if ((atts = getAtts(obj, idx)) != null) {
+		if ((atts = getAtts(obj, 0)) != null) {
 			AttVal<?> item = atts.get(att);
 			return item != null;
@@ -845,9 +845,9 @@
 	@SuppressWarnings("unchecked")
 	private static void landmarks() {
-		if (testAttribute(Obj.LNDMRK, Att.CATLMK, CatLMK.LMK_UNKN)
-				&& (testAttribute(Obj.LNDMRK, Att.CATLMK, FncFNC.FNC_UNKN) || testAttribute(Obj.LNDMRK, Att.CATLMK, FncFNC.FNC_LGHT))
+		if (!hasAttribute(Obj.LNDMRK, Att.CATLMK)
+				&& (!hasAttribute(Obj.LNDMRK, Att.FUNCTN) || testAttribute(Obj.LNDMRK, Att.FUNCTN, FncFNC.FNC_LGHT))
 				&& hasObject(Obj.LIGHTS))
 			lights();
-		if (Renderer.zoom >= 12) {
+		else if (Renderer.zoom >= 12) {
 			switch (feature.type) {
 			case LNDMRK:
