Improve metadata_editor_update_metadata() API 50/232550/3
authorhj kim <backto.kim@samsung.com>
Wed, 6 May 2020 08:17:40 +0000 (17:17 +0900)
committerhj kim <backto.kim@samsung.com>
Wed, 6 May 2020 09:15:38 +0000 (18:15 +0900)
Change-Id: I524618dd0f78bdd05e902d437419c87136925e6e

src/metadata_editor.cpp

index 7f6000a..3942b2d 100755 (executable)
@@ -1327,62 +1327,38 @@ extern "C" int metadata_editor_update_metadata(metadata_editor_h metadata) {
        ret = __check_metadata_set_parameter(_metadata);
        metadata_editor_retvm_if(ret != METADATA_EDITOR_ERROR_NONE, ret, "fail to __check_metadata_set_parameter() [%d]", ret);
 
-       switch (_metadata->filetype) {                                          // Process the file according to the specified file type
-               case METADATA_EDITOR_FORMAT_MP3: {
-                       // Bring the pointer to actual file type
-                       TagLib::MPEG::File* _file = (TagLib::MPEG::File*)_metadata->file;
-
-                       TagLib::ID3v1::Tag* tag1 = _file->ID3v1Tag();
+       switch (_metadata->filetype) {
+       case METADATA_EDITOR_FORMAT_MP3: {
+               TagLib::MPEG::File* _file = (TagLib::MPEG::File*)_metadata->file;
+               TagLib::ID3v1::Tag* tag1 = _file->ID3v1Tag();
 
-                       if (!tag1 || tag1->isEmpty()) {                                                 // If no ID3v1 tag - prevent its creation
-                               if (_file->save(TagLib::MPEG::File::ID3v2 | TagLib::MPEG::File::APE))
-                                       return METADATA_EDITOR_ERROR_NONE;
-                       } else {                                                                                // otherwise - save all tags in file
-                               if (_file->save(TagLib::MPEG::File::AllTags))
-                                       return METADATA_EDITOR_ERROR_NONE;
-                       }
-                       return METADATA_EDITOR_ERROR_OPERATION_FAILED;
-               }
-               case METADATA_EDITOR_FORMAT_MP4: {
-                       TagLib::MP4::File* _file = (TagLib::MP4::File*)_metadata->file;
-                       if (_file->save())
+               if (!tag1 || tag1->isEmpty()) { // If no ID3v1 tag - prevent its creation
+                       if (_file->save(TagLib::MPEG::File::ID3v2 | TagLib::MPEG::File::APE))
                                return METADATA_EDITOR_ERROR_NONE;
-                       else
-                               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
-               }
-#if 0
-               case METADATA_EDITOR_FORMAT_FLAC: {
-                       TagLib::FLAC::File* _file = (TagLib::FLAC::File*)_metadata->file;
-                       if (_file->save())
+               } else {        // otherwise - save all tags in file
+                       if (_file->save(TagLib::MPEG::File::AllTags))
                                return METADATA_EDITOR_ERROR_NONE;
-                       else
-                               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
-               }
-               case METADATA_EDITOR_FORMAT_OGG_VORBIS: {
-                       TagLib::Ogg::Vorbis::File* _file = (TagLib::Ogg::Vorbis::File*)_metadata->file;
-                       if (_file->save())
-                               return METADATA_EDITOR_ERROR_NONE;
-                       else
-                               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
-               }
-               case METADATA_EDITOR_FORMAT_OGG_FLAC: {
-                       TagLib::Ogg::FLAC::File* _file = (TagLib::Ogg::FLAC::File*)_metadata->file;
-                       if (_file->save())
-                               return METADATA_EDITOR_ERROR_NONE;
-                       else
-                               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
-               }
-               case METADATA_EDITOR_FORMAT_WAV: {
-                       TagLib::RIFF::WAV::File* _file = (TagLib::RIFF::WAV::File*)_metadata->file;
-                       if (_file->save())
-                               return METADATA_EDITOR_ERROR_NONE;
-                       else
-                               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
                }
+
+               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
+       }
+
+       case METADATA_EDITOR_FORMAT_MP4: {
+#if 0
+       case METADATA_EDITOR_FORMAT_FLAC:
+       case METADATA_EDITOR_FORMAT_OGG_VORBIS:
+       case METADATA_EDITOR_FORMAT_OGG_FLAC:
+       case METADATA_EDITOR_FORMAT_WAV:
 #endif
-               default:
-                       metadata_editor_error("Wrong file type");
-                       return METADATA_EDITOR_ERROR_INVALID_PARAMETER;
+               if (_metadata->file->save())
+                       return METADATA_EDITOR_ERROR_NONE;
+
+               return METADATA_EDITOR_ERROR_OPERATION_FAILED;
+       }
+
+       default:
+               metadata_editor_error("Wrong file type");
+               return METADATA_EDITOR_ERROR_INVALID_PARAMETER;
        }
 }