diff --git a/frontend-js/src/main/js/map/AbstractCustomMap.js b/frontend-js/src/main/js/map/AbstractCustomMap.js
index 053a5c31af7637685f6ac78ee26f6002781f5f34..967fff2cb0a0ce4e92bdb9664a8decb529c778e7 100644
--- a/frontend-js/src/main/js/map/AbstractCustomMap.js
+++ b/frontend-js/src/main/js/map/AbstractCustomMap.js
@@ -190,7 +190,7 @@ AbstractCustomMap.prototype.registerMapClickEvents = function () {
 
     var polygon = "";
     polygon += x1 + "," + y1 + ";";
-    polygon += x2 + "," + y2 + ";";
+    polygon += x2 + "," + y1 + ";";
     polygon += x2 + "," + y2 + ";";
     polygon += x1 + "," + y2 + ";";
     self.getTopMap().setSelectedPolygon(polygon);
diff --git a/frontend-js/src/main/js/map/canvas/OpenLayers/OpenLayerCanvas.js b/frontend-js/src/main/js/map/canvas/OpenLayers/OpenLayerCanvas.js
index 4cac45d328edc4fbece453e8d7a722768c447f98..968ad1422ae5478b9f553c94b757a03fb6b2dd4a 100644
--- a/frontend-js/src/main/js/map/canvas/OpenLayers/OpenLayerCanvas.js
+++ b/frontend-js/src/main/js/map/canvas/OpenLayers/OpenLayerCanvas.js
@@ -425,7 +425,14 @@ OpenLayerCanvas.prototype.getBounds = function () {
   if (p1.x > maxWidth / 2) {
     p1.x -= maxWidth;
   }
-  return new Bounds(p1, p2);
+  var bounds = new Bounds(p1, p2);
+  //if the world is wrapped (it's a workaround and might not work for browser with huge resolution)
+  if (!bounds.contains(self.getCenter())) {
+    p1.x = -maxWidth / 2;
+    p2.x = maxWidth / 2;
+    bounds = new Bounds(p1, p2)
+  }
+  return bounds;
 };
 
 OpenLayerCanvas.prototype.turnOnDrawing = function () {