Only compress files that were already compressed in the original APK.

Also fix a log message.

Test: Manually. Unit tests pass.

Change-Id: Iea236bbcfbe1a0a0894ce1bfce09c19208c5a0bc
diff --git a/tools/aapt2/LoadedApk.cpp b/tools/aapt2/LoadedApk.cpp
index 76792ce..3d7bd94 100644
--- a/tools/aapt2/LoadedApk.cpp
+++ b/tools/aapt2/LoadedApk.cpp
@@ -86,8 +86,7 @@
     if (path.find("res/") == 0 && referenced_resources.find(path) == referenced_resources.end()) {
       if (context->IsVerbose()) {
         context->GetDiagnostics()->Note(DiagMessage()
-                                        << "Resource '" << path << "' not referenced in "
-                                        << "resource table; removing from APK.");
+                                        << "Removing resource '" << path << "' from APK.");
       }
       continue;
     }
@@ -110,8 +109,8 @@
     }
 
     std::unique_ptr<io::IData> data = file->OpenAsData();
-    // TODO(lecesne): Only compress the files that were compressed in the original APK.
-    if (!writer->StartEntry(path, ArchiveEntry::kCompress) ||
+    uint32_t compression_flags = file->WasCompressed() ? ArchiveEntry::kCompress : 0u;
+    if (!writer->StartEntry(path, compression_flags) ||
         !writer->WriteEntry(data->data(), data->size()) || !writer->FinishEntry()) {
       context->GetDiagnostics()->Error(DiagMessage()
                                        << "Error when writing file '" << path << "' in APK.");