summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-07-13 23:50:42 +0300
committerAndrei Karas <akaras@inbox.ru>2017-07-13 23:50:42 +0300
commit16bcb81b0509725e4546bcb3c390ca3c1bb7e7b1 (patch)
tree1db34fd6c50a1421ac186a3652f1e43494881286
parentf5c004a94061cab1685fa063b039dc2eec29cbbe (diff)
downloadmanaplus-16bcb81b0509725e4546bcb3c390ca3c1bb7e7b1.tar.gz
manaplus-16bcb81b0509725e4546bcb3c390ca3c1bb7e7b1.tar.bz2
manaplus-16bcb81b0509725e4546bcb3c390ca3c1bb7e7b1.tar.xz
manaplus-16bcb81b0509725e4546bcb3c390ca3c1bb7e7b1.zip
Add vector.h for use different vectors.
Also replace <vector> include into "utils/vector.h"
-rw-r--r--src/CMakeLists.txt2
-rw-r--r--src/Makefile.am1
-rw-r--r--src/being/compoundsprite.h3
-rw-r--r--src/effectmanager.h3
-rw-r--r--src/events/inputevent.h3
-rw-r--r--src/fs/virtfs/zipentry.h2
-rw-r--r--src/gui/focushandler.h3
-rw-r--r--src/gui/models/beingslistmodel.h3
-rw-r--r--src/gui/models/shopitems.h3
-rw-r--r--src/gui/models/tablemodel.h3
-rw-r--r--src/gui/palette.h3
-rw-r--r--src/gui/widgets/equipmentpage.h2
-rw-r--r--src/gui/widgets/layoutarray.h2
-rw-r--r--src/input/touch/touchmanager.h3
-rw-r--r--src/listeners/baselistener.hpp2
-rw-r--r--src/logger.h3
-rw-r--r--src/net/buyingstorehandler.h3
-rw-r--r--src/net/cashshophandler.h2
-rw-r--r--src/net/charserverhandler.h3
-rw-r--r--src/net/ea/inventoryitem.h4
-rw-r--r--src/net/inventoryhandler.h4
-rw-r--r--src/net/ipc.h3
-rw-r--r--src/net/markethandler.h2
-rw-r--r--src/net/npchandler.h2
-rw-r--r--src/net/vendinghandler.h3
-rw-r--r--src/net/worldinfo.h3
-rw-r--r--src/particle/particleinfo.h2
-rw-r--r--src/particle/particlevector.h2
-rw-r--r--src/render/vertexes/imagevertexes.h2
-rw-r--r--src/render/vertexes/openglgraphicsvertexes.h2
-rw-r--r--src/resources/animation/animation.h5
-rw-r--r--src/resources/atlas/atlasresource.h4
-rw-r--r--src/resources/db/chardb.h4
-rw-r--r--src/resources/db/itemoptiondb.h3
-rw-r--r--src/resources/db/networkdb.h3
-rw-r--r--src/resources/db/questdb.h3
-rw-r--r--src/resources/db/statdb.h4
-rw-r--r--src/resources/db/weaponsdb.h2
-rw-r--r--src/resources/dye/dyepalette.h3
-rw-r--r--src/resources/imageset.h2
-rw-r--r--src/resources/map/map.h4
-rw-r--r--src/resources/map/maplayer.h4
-rw-r--r--src/resources/map/mapobjectlist.h2
-rw-r--r--src/resources/map/tileanimation.h3
-rw-r--r--src/resources/questitem.h3
-rw-r--r--src/resources/skill/skillinfo.h3
-rw-r--r--src/resources/soundinfo.h3
-rw-r--r--src/settings.h2
-rw-r--r--src/spellmanager.h3
-rw-r--r--src/unittests/render/mockgraphics.h4
-rw-r--r--src/utils/langs.h3
-rw-r--r--src/utils/perfomance.h3
-rw-r--r--src/utils/stringvector.h3
-rw-r--r--src/utils/vector.h32
-rw-r--r--src/utils/xmlutils.h3
55 files changed, 122 insertions, 64 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index e363bcbdd..9d056b3a5 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -941,6 +941,7 @@ SET(SRCS
utils/stringvector.h
utils/timer.cpp
utils/timer.h
+ utils/vector.h
fs/virtfs/file.cpp
fs/virtfs/file.h
utils/mutex.h
@@ -1849,6 +1850,7 @@ SET(DYE_CMD_SRCS
utils/stringutils.h
utils/timer.cpp
utils/timer.h
+ utils/vector.h
fs/virtfs/virtfile.cpp
fs/virtfs/virtfile.h
utils/xml.cpp
diff --git a/src/Makefile.am b/src/Makefile.am
index af00bbdf8..a4d45bed4 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -633,6 +633,7 @@ BASE_SRC += events/actionevent.h \
utils/stringvector.h \
utils/timer.cpp \
utils/timer.h \
+ utils/vector.h \
fs/virtfs/file.cpp \
fs/virtfs/file.h \
utils/mutex.h \
diff --git a/src/being/compoundsprite.h b/src/being/compoundsprite.h
index d8d954977..92474025a 100644
--- a/src/being/compoundsprite.h
+++ b/src/being/compoundsprite.h
@@ -24,8 +24,9 @@
#include "resources/sprite/sprite.h"
+#include "utils/vector.h"
+
#include <list>
-#include <vector>
#include "localconsts.h"
diff --git a/src/effectmanager.h b/src/effectmanager.h
index 957e32cf3..5030b175f 100644
--- a/src/effectmanager.h
+++ b/src/effectmanager.h
@@ -27,11 +27,12 @@
#include "enums/simpletypes/skiperror.h"
+#include "utils/vector.h"
+
#include "particle/particletimer.h"
#include "resources/effectdescription.h"
-#include <vector>
#include <list>
#include "localconsts.h"
diff --git a/src/events/inputevent.h b/src/events/inputevent.h
index 197236709..1078b2ae8 100644
--- a/src/events/inputevent.h
+++ b/src/events/inputevent.h
@@ -23,9 +23,10 @@
#include "enums/input/inputaction.h"
+#include "utils/vector.h"
+
#include <map>
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/fs/virtfs/zipentry.h b/src/fs/virtfs/zipentry.h
index 5d912f057..ddb742b4f 100644
--- a/src/fs/virtfs/zipentry.h
+++ b/src/fs/virtfs/zipentry.h
@@ -23,7 +23,7 @@
#include "fs/virtfs/fsentry.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/gui/focushandler.h b/src/gui/focushandler.h
index 3d0847515..346abc7b8 100644
--- a/src/gui/focushandler.h
+++ b/src/gui/focushandler.h
@@ -66,8 +66,9 @@
#ifndef GUI_FOCUSHANDLER_H
#define GUI_FOCUSHANDLER_H
+#include "utils/vector.h"
+
#include <list>
-#include <vector>
#include "localconsts.h"
diff --git a/src/gui/models/beingslistmodel.h b/src/gui/models/beingslistmodel.h
index a50b20d8d..db17f4833 100644
--- a/src/gui/models/beingslistmodel.h
+++ b/src/gui/models/beingslistmodel.h
@@ -26,8 +26,7 @@
#include "utils/cast.h"
#include "utils/dtor.h"
-
-#include <vector>
+#include "utils/vector.h"
class BeingsListModel final : public AvatarListModel
{
diff --git a/src/gui/models/shopitems.h b/src/gui/models/shopitems.h
index d162ce524..8bb6719d7 100644
--- a/src/gui/models/shopitems.h
+++ b/src/gui/models/shopitems.h
@@ -30,8 +30,7 @@
#include "gui/models/listmodel.h"
#include "utils/cast.h"
-
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/gui/models/tablemodel.h b/src/gui/models/tablemodel.h
index dc3462f19..f28a60a6f 100644
--- a/src/gui/models/tablemodel.h
+++ b/src/gui/models/tablemodel.h
@@ -23,8 +23,9 @@
#ifndef GUI_MODELS_TABLEMODEL_H
#define GUI_MODELS_TABLEMODEL_H
+#include "utils/vector.h"
+
#include <set>
-#include <vector>
#include "localconsts.h"
diff --git a/src/gui/palette.h b/src/gui/palette.h
index 00f295cc4..f75f3f8fb 100644
--- a/src/gui/palette.h
+++ b/src/gui/palette.h
@@ -28,10 +28,11 @@
#include "gui/color.h"
+#include "utils/vector.h"
+
#include <map>
#include <set>
#include <string>
-#include <vector>
// Default Gradient Delay
#define GRADIENT_DELAY 40
diff --git a/src/gui/widgets/equipmentpage.h b/src/gui/widgets/equipmentpage.h
index 9e7670bbe..33cbbf13f 100644
--- a/src/gui/widgets/equipmentpage.h
+++ b/src/gui/widgets/equipmentpage.h
@@ -21,7 +21,7 @@
#ifndef GUI_WIDGETS_EQUIPMENTPAGE_H
#define GUI_WIDGETS_EQUIPMENTPAGE_H
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/gui/widgets/layoutarray.h b/src/gui/widgets/layoutarray.h
index 2f5d766e7..2a35635dc 100644
--- a/src/gui/widgets/layoutarray.h
+++ b/src/gui/widgets/layoutarray.h
@@ -23,7 +23,7 @@
#ifndef GUI_WIDGETS_LAYOUTARRAY_H
#define GUI_WIDGETS_LAYOUTARRAY_H
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/input/touch/touchmanager.h b/src/input/touch/touchmanager.h
index 0d5640f50..6727b9b08 100644
--- a/src/input/touch/touchmanager.h
+++ b/src/input/touch/touchmanager.h
@@ -28,8 +28,7 @@
#include "gui/rect.h"
#include "utils/cast.h"
-
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/listeners/baselistener.hpp b/src/listeners/baselistener.hpp
index 05e5694b8..908bc9585 100644
--- a/src/listeners/baselistener.hpp
+++ b/src/listeners/baselistener.hpp
@@ -21,7 +21,7 @@
#ifndef LISTENERS_BASELISTENER_HPP
#define LISTENERS_BASELISTENER_HPP
-#include <vector>
+#include "utils/vector.h"
#define defineListener(name) \
std::vector<name*> name::mListeners; \
diff --git a/src/logger.h b/src/logger.h
index 15b955795..c096c370e 100644
--- a/src/logger.h
+++ b/src/logger.h
@@ -25,13 +25,14 @@
#include "localconsts.h"
+#include "utils/vector.h"
+
PRAGMA48(GCC diagnostic push)
PRAGMA48(GCC diagnostic ignored "-Wshadow")
#include <SDL_mutex.h>
PRAGMA48(GCC diagnostic pop)
#include <fstream>
-#include <vector>
#ifdef ENABLEDEBUGLOG
#define DEBUGLOG(str) \
diff --git a/src/net/buyingstorehandler.h b/src/net/buyingstorehandler.h
index 007207480..3d2b2b0e9 100644
--- a/src/net/buyingstorehandler.h
+++ b/src/net/buyingstorehandler.h
@@ -21,8 +21,9 @@
#ifndef NET_BUYINGSTOREHANDLER_H
#define NET_BUYINGSTOREHANDLER_H
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/net/cashshophandler.h b/src/net/cashshophandler.h
index 2d07be871..c34548088 100644
--- a/src/net/cashshophandler.h
+++ b/src/net/cashshophandler.h
@@ -23,7 +23,7 @@
#include "enums/simpletypes/itemcolor.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/net/charserverhandler.h b/src/net/charserverhandler.h
index 295e3e512..ac07909be 100644
--- a/src/net/charserverhandler.h
+++ b/src/net/charserverhandler.h
@@ -29,8 +29,9 @@
#include "net/characters.h"
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
class CharCreateDialog;
class CharSelectDialog;
diff --git a/src/net/ea/inventoryitem.h b/src/net/ea/inventoryitem.h
index 6daa26eb7..cbf5d1560 100644
--- a/src/net/ea/inventoryitem.h
+++ b/src/net/ea/inventoryitem.h
@@ -33,9 +33,9 @@
#include "enums/simpletypes/identified.h"
#include "enums/simpletypes/itemcolor.h"
-#include "resources/item/itemoptionslist.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/item/itemoptionslist.h"
#include "localconsts.h"
diff --git a/src/net/inventoryhandler.h b/src/net/inventoryhandler.h
index 4c0799b7b..b1b7591f2 100644
--- a/src/net/inventoryhandler.h
+++ b/src/net/inventoryhandler.h
@@ -25,9 +25,9 @@
#include "enums/simpletypes/beingid.h"
-#include "resources/inventory/inventory.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/inventory/inventory.h"
namespace Net
{
diff --git a/src/net/ipc.h b/src/net/ipc.h
index 4a346e890..0d45e781f 100644
--- a/src/net/ipc.h
+++ b/src/net/ipc.h
@@ -28,8 +28,9 @@ PRAGMACLANG6GCC(GCC diagnostic ignored "-Wold-style-cast")
#include "net/sdltcpnet.h"
PRAGMACLANG6GCC(GCC diagnostic pop)
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
class IPC final
{
diff --git a/src/net/markethandler.h b/src/net/markethandler.h
index 6ace1e117..73040102f 100644
--- a/src/net/markethandler.h
+++ b/src/net/markethandler.h
@@ -25,7 +25,7 @@
#include "enums/simpletypes/itemcolor.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/net/npchandler.h b/src/net/npchandler.h
index af92eb0b1..d332fba95 100644
--- a/src/net/npchandler.h
+++ b/src/net/npchandler.h
@@ -32,7 +32,7 @@
#include "enums/simpletypes/beingid.h"
#include "enums/simpletypes/itemcolor.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/net/vendinghandler.h b/src/net/vendinghandler.h
index f2348607d..3caeaf2b3 100644
--- a/src/net/vendinghandler.h
+++ b/src/net/vendinghandler.h
@@ -21,8 +21,9 @@
#ifndef NET_VENDINGHANDLER_H
#define NET_VENDINGHANDLER_H
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/net/worldinfo.h b/src/net/worldinfo.h
index 7a1e21c9a..fbbb30bfa 100644
--- a/src/net/worldinfo.h
+++ b/src/net/worldinfo.h
@@ -23,6 +23,8 @@
#ifndef NET_WORLDINFO_H
#define NET_WORLDINFO_H
+#include "utils/vector.h"
+
#if defined(__GXX_EXPERIMENTAL_CXX0X__)
#if defined(__APPLE__)
#include <tr1/cstdint>
@@ -30,7 +32,6 @@
#endif // defined(__GXX_EXPERIMENTAL_CXX0X__)
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/particle/particleinfo.h b/src/particle/particleinfo.h
index 901457a36..327d4b3d6 100644
--- a/src/particle/particleinfo.h
+++ b/src/particle/particleinfo.h
@@ -23,7 +23,7 @@
#include "particle/particle.h"
-#include <vector>
+#include "utils/vector.h"
struct ParticleInfo final
{
diff --git a/src/particle/particlevector.h b/src/particle/particlevector.h
index 2603ad89c..27520d806 100644
--- a/src/particle/particlevector.h
+++ b/src/particle/particlevector.h
@@ -25,7 +25,7 @@
#include "particle/particlecontainer.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/render/vertexes/imagevertexes.h b/src/render/vertexes/imagevertexes.h
index 1beb9cde0..3a852f429 100644
--- a/src/render/vertexes/imagevertexes.h
+++ b/src/render/vertexes/imagevertexes.h
@@ -26,7 +26,7 @@
#ifdef USE_OPENGL
#include "render/vertexes/openglgraphicsvertexes.h"
#else // USE_OPENGL
-#include <vector>
+#include "utils/vector.h"
#endif // USE_OPENGL
#include "localconsts.h"
diff --git a/src/render/vertexes/openglgraphicsvertexes.h b/src/render/vertexes/openglgraphicsvertexes.h
index 5cd4bf098..dd05c7e1c 100644
--- a/src/render/vertexes/openglgraphicsvertexes.h
+++ b/src/render/vertexes/openglgraphicsvertexes.h
@@ -37,7 +37,7 @@ PRAGMA48(GCC diagnostic ignored "-Wshadow")
PRAGMA48(GCC diagnostic pop)
#endif // ANDROID
-#include <vector>
+#include "utils/vector.h"
class OpenGLGraphicsVertexes final
{
diff --git a/src/resources/animation/animation.h b/src/resources/animation/animation.h
index 1a493c62e..4a672aab2 100644
--- a/src/resources/animation/animation.h
+++ b/src/resources/animation/animation.h
@@ -23,10 +23,11 @@
#ifndef RESOURCES_ANIMATION_ANIMATION_H
#define RESOURCES_ANIMATION_ANIMATION_H
-#include "resources/frame.h"
#include "resources/memorycounter.h"
-#include <vector>
+#include "utils/vector.h"
+
+#include "resources/frame.h"
#include "localconsts.h"
diff --git a/src/resources/atlas/atlasresource.h b/src/resources/atlas/atlasresource.h
index 6f2178b6d..ba0d441ea 100644
--- a/src/resources/atlas/atlasresource.h
+++ b/src/resources/atlas/atlasresource.h
@@ -23,9 +23,9 @@
#ifdef USE_OPENGL
-#include "resources/resource.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/resource.h"
struct TextureAtlas;
diff --git a/src/resources/db/chardb.h b/src/resources/db/chardb.h
index 9715497f1..083e7c12d 100644
--- a/src/resources/db/chardb.h
+++ b/src/resources/db/chardb.h
@@ -24,9 +24,9 @@
#include "utils/xml.h"
-#include "resources/beingslot.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/beingslot.h"
/**
* Char information database.
diff --git a/src/resources/db/itemoptiondb.h b/src/resources/db/itemoptiondb.h
index 9e088c76f..a4fb82638 100644
--- a/src/resources/db/itemoptiondb.h
+++ b/src/resources/db/itemoptiondb.h
@@ -23,9 +23,10 @@
#include "enums/simpletypes/skiperror.h"
+#include "utils/vector.h"
+
#include <map>
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/resources/db/networkdb.h b/src/resources/db/networkdb.h
index 0018daaa5..697adbc44 100644
--- a/src/resources/db/networkdb.h
+++ b/src/resources/db/networkdb.h
@@ -23,8 +23,9 @@
#include "enums/simpletypes/skiperror.h"
+#include "utils/vector.h"
+
#include <map>
-#include <vector>
#include <string>
typedef std::map<int32_t, int32_t> NetworkInPacketInfos;
diff --git a/src/resources/db/questdb.h b/src/resources/db/questdb.h
index 44a00631c..1bec2cc4e 100644
--- a/src/resources/db/questdb.h
+++ b/src/resources/db/questdb.h
@@ -23,10 +23,11 @@
#include "enums/simpletypes/skiperror.h"
+#include "utils/vector.h"
+
#include "resources/questvar.h"
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/resources/db/statdb.h b/src/resources/db/statdb.h
index 1eaa6ed01..898f0af63 100644
--- a/src/resources/db/statdb.h
+++ b/src/resources/db/statdb.h
@@ -23,9 +23,9 @@
#include "enums/simpletypes/skiperror.h"
-#include "resources/basicstat.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/basicstat.h"
#include "localconsts.h"
diff --git a/src/resources/db/weaponsdb.h b/src/resources/db/weaponsdb.h
index 9c7083c33..e30b4f544 100644
--- a/src/resources/db/weaponsdb.h
+++ b/src/resources/db/weaponsdb.h
@@ -21,7 +21,7 @@
#ifndef RESOURCES_DB_WEAPONSDB_H
#define RESOURCES_DB_WEAPONSDB_H
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/resources/dye/dyepalette.h b/src/resources/dye/dyepalette.h
index eee7f2327..95a26ca52 100644
--- a/src/resources/dye/dyepalette.h
+++ b/src/resources/dye/dyepalette.h
@@ -25,10 +25,11 @@
#include "resources/dye/dyecolor.h"
+#include "utils/vector.h"
+
#include "resources/dye/dyepaletteptr.h"
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/resources/imageset.h b/src/resources/imageset.h
index 8d5cf6249..9aaad6e4b 100644
--- a/src/resources/imageset.h
+++ b/src/resources/imageset.h
@@ -25,7 +25,7 @@
#include "resources/resource.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/resources/map/map.h b/src/resources/map/map.h
index c952b7ffa..8a2051a60 100644
--- a/src/resources/map/map.h
+++ b/src/resources/map/map.h
@@ -35,12 +35,12 @@
#include "listeners/configlistener.h"
+#include "utils/vector.h"
+
#include "resources/memorycounter.h"
#include "resources/map/properties.h"
-#include <vector>
-
class AmbientLayer;
class MapHeights;
class MapItem;
diff --git a/src/resources/map/maplayer.h b/src/resources/map/maplayer.h
index a1c43d205..f5cf36fa9 100644
--- a/src/resources/map/maplayer.h
+++ b/src/resources/map/maplayer.h
@@ -31,9 +31,9 @@
#include "enums/resources/map/maptype.h"
-#include "resources/map/tileinfo.h"
+#include "utils/vector.h"
-#include <vector>
+#include "resources/map/tileinfo.h"
class Image;
class MapRowVertexes;
diff --git a/src/resources/map/mapobjectlist.h b/src/resources/map/mapobjectlist.h
index b205bfd86..139ee08ea 100644
--- a/src/resources/map/mapobjectlist.h
+++ b/src/resources/map/mapobjectlist.h
@@ -25,7 +25,7 @@
#include "resources/map/mapobject.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/resources/map/tileanimation.h b/src/resources/map/tileanimation.h
index 953345c1a..bf4e9f232 100644
--- a/src/resources/map/tileanimation.h
+++ b/src/resources/map/tileanimation.h
@@ -23,8 +23,9 @@
#ifndef RESOURCES_MAP_TILEANIMATION_H
#define RESOURCES_MAP_TILEANIMATION_H
+#include "utils/vector.h"
+
#include <map>
-#include <vector>
#include "localconsts.h"
diff --git a/src/resources/questitem.h b/src/resources/questitem.h
index 24cb8be80..27a3881d6 100644
--- a/src/resources/questitem.h
+++ b/src/resources/questitem.h
@@ -23,8 +23,9 @@
#include "resources/questitemtext.h"
+#include "utils/vector.h"
+
#include <set>
-#include <vector>
#include "localconsts.h"
diff --git a/src/resources/skill/skillinfo.h b/src/resources/skill/skillinfo.h
index ac632e193..4b4f58fb9 100644
--- a/src/resources/skill/skillinfo.h
+++ b/src/resources/skill/skillinfo.h
@@ -30,8 +30,9 @@
#include "enums/resources/skill/skillowner.h"
#include "enums/resources/skill/skilltype.h"
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
#include <map>
#include "localconsts.h"
diff --git a/src/resources/soundinfo.h b/src/resources/soundinfo.h
index 6a18b648e..51fed06bf 100644
--- a/src/resources/soundinfo.h
+++ b/src/resources/soundinfo.h
@@ -23,9 +23,10 @@
#include "enums/resources/item/itemsoundevent.h"
+#include "utils/vector.h"
+
#include <map>
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/settings.h b/src/settings.h
index 258af83f9..4343cc4c3 100644
--- a/src/settings.h
+++ b/src/settings.h
@@ -27,7 +27,7 @@
#include "enums/resources/map/maptype.h"
-#include <vector>
+#include "utils/vector.h"
#include "localconsts.h"
diff --git a/src/spellmanager.h b/src/spellmanager.h
index b4905712f..c6fd058ed 100644
--- a/src/spellmanager.h
+++ b/src/spellmanager.h
@@ -23,9 +23,10 @@
#ifndef SPELLMANAGER_H
#define SPELLMANAGER_H
+#include "utils/vector.h"
+
#include <string>
#include <map>
-#include <vector>
#include "localconsts.h"
diff --git a/src/unittests/render/mockgraphics.h b/src/unittests/render/mockgraphics.h
index ccc6d75e6..c18e6acd1 100644
--- a/src/unittests/render/mockgraphics.h
+++ b/src/unittests/render/mockgraphics.h
@@ -29,9 +29,9 @@
#include "unittests/render/mockdrawitem.h"
-#include "localconsts.h"
+#include "utils/vector.h"
-#include <vector>
+#include "localconsts.h"
class MockGraphics final : public Graphics
{
diff --git a/src/utils/langs.h b/src/utils/langs.h
index 902dcf264..133883089 100644
--- a/src/utils/langs.h
+++ b/src/utils/langs.h
@@ -21,8 +21,9 @@
#ifndef UTILS_LANGS_H
#define UTILS_LANGS_H
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
#include "localconsts.h"
diff --git a/src/utils/perfomance.h b/src/utils/perfomance.h
index 4d8fc6188..1e8688551 100644
--- a/src/utils/perfomance.h
+++ b/src/utils/perfomance.h
@@ -22,11 +22,12 @@
#define UTILS_PERFOMANCE_H
#ifdef USE_PROFILER
+#include "utils/vector.h"
+
#include <string>
#include <sstream>
#include <list>
#include <set>
-#include <vector>
#include "localconsts.h"
diff --git a/src/utils/stringvector.h b/src/utils/stringvector.h
index 4c060b9b9..7649f3b35 100644
--- a/src/utils/stringvector.h
+++ b/src/utils/stringvector.h
@@ -21,8 +21,9 @@
#ifndef UTILS_STRINGVECTOR_H
#define UTILS_STRINGVECTOR_H
+#include "utils/vector.h"
+
#include <string>
-#include <vector>
typedef std::vector<std::string> StringVect;
typedef StringVect::iterator StringVectIter;
diff --git a/src/utils/vector.h b/src/utils/vector.h
new file mode 100644
index 000000000..6ec054edf
--- /dev/null
+++ b/src/utils/vector.h
@@ -0,0 +1,32 @@
+/*
+ * The ManaPlus Client
+ * Copyright (C) 2017 The ManaPlus Developers
+ *
+ * This file is part of The ManaPlus Client.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef UTILS_VECTOR_H
+#define UTILS_VECTOR_H
+
+#ifdef ENABLE_STLDEBUG
+#include "debug/mse/msemstdvector.h"
+#define STD_VECTOR mse::mstd::vector
+#else // ENABLE_STLDEBUG
+#include <vector>
+#define STD_VECTOR std::vector
+#endif // ENABLE_STLDEBUG
+
+#endif // UTILS_VECTOR_H
diff --git a/src/utils/xmlutils.h b/src/utils/xmlutils.h
index df736b4da..6b24dc471 100644
--- a/src/utils/xmlutils.h
+++ b/src/utils/xmlutils.h
@@ -23,9 +23,10 @@
#include "enums/simpletypes/skiperror.h"
+#include "utils/vector.h"
+
#include <string>
#include <map>
-#include <vector>
void readXmlIntVector(const std::string &fileName,
const std::string &rootName,