diff --git a/Protocol.cpp b/Protocol.cpp
index b243c2c7589d343138e8dcee7c0105b8ff4d68db..a3142c27604c69424f6ca4c0b212146403b5b1e1 100644
--- a/Protocol.cpp
+++ b/Protocol.cpp
@@ -74,7 +74,7 @@ int Protocol::setData(vector<BYTE> data, int type){
         msg.data = subvector;
         if(size < MINSIZE){
             BYTE zero = 0x00;
-            msg.data.insert(msg.data.begin(), MINSIZE-size, zero);
+            msg.data.insert(msg.data.end(), MINSIZE-size, zero);
             size = MINSIZE;
         }
         msg.size = bitset<SIZE_S>(size);
diff --git a/dirFunctions.cpp b/dirFunctions.cpp
index bb8964a28e48d098d6051a59ce72882a376d9752..0a8e9f07ac700728f65905f1619a8b7d5d3c0a9b 100644
--- a/dirFunctions.cpp
+++ b/dirFunctions.cpp
@@ -16,6 +16,7 @@ void cd(string path){
 
 string ls(string args){
     string output;
+    args += " 2>&1";
     FILE *lsOut = popen(args.c_str(), "r");
     if(!lsOut){
         throw "Couldn't execute ls";