diff --git a/lib/bcc/CacheWriter.cpp b/lib/bcc/CacheWriter.cpp
index 87c554c..c274d90 100644
--- a/lib/bcc/CacheWriter.cpp
+++ b/lib/bcc/CacheWriter.cpp
@@ -90,7 +90,7 @@
   // Initialize
   memset(header, '\0', sizeof(OBCC_Header));
 
-  // Magic word and version 
+  // Magic word and version
   memcpy(header->magic, OBCC_MAGIC, 4);
   memcpy(header->version, OBCC_VERSION, 4);
 
@@ -117,7 +117,7 @@
                      sizeof(OBCC_Dependency) * mDependencies.size();
 
   OBCC_DependencyTable *tab = (OBCC_DependencyTable *)malloc(tableSize);
-  
+
   if (!tab) {
     LOGE("Unable to allocate for dependency table section.\n");
     return false;
@@ -158,11 +158,11 @@
   }
 
   mpFuncTableSection = tab;
-  mpHeaderSection->func_table_size = tableSize; 
+  mpHeaderSection->func_table_size = tableSize;
 
   tab->count = static_cast<size_t>(funcCount);
 
-  // Get the function informations 
+  // Get the function informations
   vector<char *> funcNameList(funcCount);
   mpOwner->getFunctions(0, funcCount, &*funcNameList.begin());
 
diff --git a/lib/bcc/FileHandle.cpp b/lib/bcc/FileHandle.cpp
index 8ec194a..db02741 100644
--- a/lib/bcc/FileHandle.cpp
+++ b/lib/bcc/FileHandle.cpp
@@ -153,7 +153,7 @@
 
       continue;
     }
-    
+
     written += nwrite;
     count -= (size_t)nwrite;
     buf += (size_t)nwrite;
diff --git a/lib/bcc/Sha1Helper.cpp b/lib/bcc/Sha1Helper.cpp
index b8179e2..170cb0f 100644
--- a/lib/bcc/Sha1Helper.cpp
+++ b/lib/bcc/Sha1Helper.cpp
@@ -63,7 +63,7 @@
   char buf[256];
   while (true) {
     ssize_t nread = file.read(buf, sizeof(buf));
-    
+
     if (nread < 0) {
       break;
     }
