From db88b7b4bbf53619a22079494f26a9548d9feb00 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 15:46:26 +0100 Subject: [PATCH 1/8] Fix cast-function-types warnings in file.c --- src/file.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/file.c b/src/file.c index b4c7bce..9dcdbab 100644 --- a/src/file.c +++ b/src/file.c @@ -1700,13 +1700,12 @@ et_file_check_saved (const ET_File *ETFile) *******************/ /* - * Set to TRUE the value of 'FileTag->saved' for the File_Tag item passed in parameter. - * And set ALL other values of the list to FALSE. + * Set to FALSE the value of 'FileTag->saved' for the File_Tag item passed in parameter. */ static void -Set_Saved_Value_Of_File_Tag (File_Tag *FileTag, gboolean saved) +Set_Saved_Value_Of_File_Tag (File_Tag *FileTag, gpointer userdata) { - if (FileTag) FileTag->saved = saved; + if (FileTag) FileTag->saved = FALSE; } static void @@ -1717,7 +1716,7 @@ ET_Mark_File_Tag_As_Saved (ET_File *ETFile) FileTag = (File_Tag *)ETFile->FileTag->data; // The current FileTag, to set to TRUE FileTagList = ETFile->FileTagList; - g_list_foreach(FileTagList,(GFunc)Set_Saved_Value_Of_File_Tag,FALSE); // All other FileTag set to FALSE + g_list_foreach(FileTagList, (GFunc)Set_Saved_Value_Of_File_Tag, NULL); // All other FileTag set to FALSE FileTag->saved = TRUE; // The current FileTag set to TRUE } @@ -1729,7 +1728,7 @@ void ET_Mark_File_Name_As_Saved (ET_File *ETFile) FileNameNew = (File_Name *)ETFile->FileNameNew->data; // The current FileName, to set to TRUE FileNameList = ETFile->FileNameList; - g_list_foreach(FileNameList,(GFunc)Set_Saved_Value_Of_File_Tag,FALSE); + g_list_foreach(FileNameList, (GFunc)Set_Saved_Value_Of_File_Tag, NULL); FileNameNew->saved = TRUE; } -- GitLab From 6f30ae35f5713107d0398fa191d19169cfa612a7 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 15:52:39 +0100 Subject: [PATCH 2/8] Explicitly handle all enum values in tags/vcedit.c Fixes switch-enum compiler warnings. --- src/tags/vcedit.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tags/vcedit.c b/src/tags/vcedit.c index c662e84..4a73348 100644 --- a/src/tags/vcedit.c +++ b/src/tags/vcedit.c @@ -583,12 +583,10 @@ vcedit_open (EtOggState *state, case ET_OGG_KIND_OPUS: #endif case ET_OGG_KIND_UNKNOWN: + case ET_OGG_KIND_UNSUPPORTED: /* TODO: Translatable string. */ g_set_error (error, ET_OGG_ERROR, ET_OGG_ERROR_INVALID, - "Ogg bitstream contains unknown data"); - goto err; - break; - case ET_OGG_KIND_UNSUPPORTED: + "Ogg bitstream contains unknown or unsupported data"); goto err; break; default: @@ -621,6 +619,7 @@ vcedit_open (EtOggState *state, case ET_OGG_KIND_OPUS: #endif case ET_OGG_KIND_UNKNOWN: + case ET_OGG_KIND_UNSUPPORTED: default: g_assert_not_reached (); break; @@ -731,6 +730,7 @@ vcedit_open (EtOggState *state, case ET_OGG_KIND_OPUS: #endif case ET_OGG_KIND_UNKNOWN: + case ET_OGG_KIND_UNSUPPORTED: default: g_assert_not_reached (); break; -- GitLab From b08a8c71ca947a91c65531ce9d0ce7725e14d4f9 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 16:01:08 +0100 Subject: [PATCH 3/8] Check for opus_head_parse return value Fixes unused-result warnings. --- src/tags/vcedit.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/tags/vcedit.c b/src/tags/vcedit.c index 4a73348..ceb8dff 100644 --- a/src/tags/vcedit.c +++ b/src/tags/vcedit.c @@ -572,8 +572,12 @@ vcedit_open (EtOggState *state, state->oi = g_slice_new (OpusHead); /* TODO: Check for success. */ - opus_head_parse (state->oi, (unsigned char*)(&header_main)->packet, - (&header_main)->bytes); + if (opus_head_parse (state->oi, (unsigned char*)(&header_main)->packet, + (&header_main)->bytes)!= 0) { + g_set_error(error, ET_OGG_ERROR, ET_OGG_ERROR_INVALID, + "Failed to parse opus header"); + goto err; + } break; #endif #ifndef ENABLE_SPEEX -- GitLab From 6f03be708d19769590343dec2556e43734be02d3 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 16:04:36 +0100 Subject: [PATCH 4/8] Fix deprecation warning with libnautilus-extension --- nautilus-extension/nautilus-easytag.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nautilus-extension/nautilus-easytag.c b/nautilus-extension/nautilus-easytag.c index 32cd145..c337641 100644 --- a/nautilus-extension/nautilus-easytag.c +++ b/nautilus-extension/nautilus-easytag.c @@ -22,9 +22,7 @@ #include #include #include -#include -#include -#include +#include #define NAUTILUS_TYPE_EASYTAG (nautilus_easytag_get_type ()) #define NAUTILUS_EASYTAG(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), NAUTILUS_TYPE_EASYTAG, NautilusEasytag)) -- GitLab From 8bdd8742d11121380bce652d631cb271ad273cb8 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 16:06:47 +0100 Subject: [PATCH 5/8] Fix declaration-after-statement in vcedit_support_stream --- src/tags/vcedit.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/tags/vcedit.c b/src/tags/vcedit.c index ceb8dff..4016f83 100644 --- a/src/tags/vcedit.c +++ b/src/tags/vcedit.c @@ -431,15 +431,17 @@ vcedit_supported_stream (EtOggState *state, result = ET_OGG_KIND_UNKNOWN; #ifdef ENABLE_SPEEX - SpeexHeader *speex; - - /* Done after "Ogg test" to avoid to display an error message in - * function speex_packet_to_header() when the file is not Speex. */ - if ((speex = speex_packet_to_header ((char*)(&header)->packet, - (&header)->bytes))) { - result = ET_OGG_KIND_SPEEX; - speex_header_free (speex); + SpeexHeader *speex; + + /* Done after "Ogg test" to avoid to display an error message in + * function speex_packet_to_header() when the file is not Speex. */ + if ((speex = speex_packet_to_header ((char*)(&header)->packet, + (&header)->bytes))) + { + result = ET_OGG_KIND_SPEEX; + speex_header_free (speex); + } } #endif -- GitLab From ba91732c3ddcbfd926cfe6006acce919779b75dd Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 16:19:05 +0100 Subject: [PATCH 6/8] Fix enum-conversion warnings in tags/flac_tag.c --- src/tags/flac_tag.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tags/flac_tag.c b/src/tags/flac_tag.c index 1b02e29..6793006 100644 --- a/src/tags/flac_tag.c +++ b/src/tags/flac_tag.c @@ -530,7 +530,7 @@ flac_tag_read_file_tag (GFile *file, bytes = g_bytes_new (p->data, p->data_length); - pic = et_picture_new (p->type, (const gchar *)p->description, + pic = et_picture_new ((EtPictureType) p->type, (const gchar *)p->description, 0, 0, bytes); g_bytes_unref (bytes); @@ -1010,8 +1010,8 @@ flac_tag_write_file_tag (const ET_File *ETFile, picture_block = FLAC__metadata_object_new(FLAC__METADATA_TYPE_PICTURE); // Type - picture_block->data.picture.type = pic->type; + picture_block->data.picture.type = (FLAC__StreamMetadata_Picture_Type) pic->type; // Mime type format = Picture_Format_From_Data(pic); /* Safe to pass a const string, according to the FLAC API -- GitLab From f23fd1c8fddf6c3c1b0dc0c0191c0380d85ffb29 Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Sun, 11 Oct 2020 03:40:47 +0200 Subject: [PATCH 7/8] Fix FLAC documentation URL --- src/picture.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/picture.h b/src/picture.h index 5f62bc5..d687628 100644 --- a/src/picture.h +++ b/src/picture.h @@ -30,7 +30,7 @@ G_BEGIN_DECLS typedef enum // Picture types { - // Same values for FLAC, see: http://flac.sourceforge.net/api/group__flac__format.html#ga113 + // Same values for FLAC, see: https://xiph.org/flac/api/group__flac__format.html#gaf6d3e836cee023e0b8d897f1fdc9825d ET_PICTURE_TYPE_OTHER = 0, ET_PICTURE_TYPE_FILE_ICON, ET_PICTURE_TYPE_OTHER_FILE_ICON, -- GitLab From b7558fb611dfab4dd59b74b17b369581ebe18d4d Mon Sep 17 00:00:00 2001 From: Haochen Tong Date: Mon, 20 Jan 2020 16:53:08 +0100 Subject: [PATCH 8/8] Fix cast-align warnings in tags/id3_tag.c --- src/tags/id3_tag.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tags/id3_tag.c b/src/tags/id3_tag.c index 1288cac..3a25465 100644 --- a/src/tags/id3_tag.c +++ b/src/tags/id3_tag.c @@ -1085,7 +1085,7 @@ gchar *Id3tag_Get_Field (const ID3Frame *id3_frame, ID3_FieldID id3_fieldid) // Id3lib (3.8.3 at least) always returns Unicode strings in UTF-16BE. case ID3TE_UTF16BE: string = g_malloc0(sizeof(unicode_t)*ID3V2_MAX_STRING_LEN+1); - num_chars = ID3Field_GetUNICODE_1(id3_field,(unicode_t *)string,ID3V2_MAX_STRING_LEN,0); + num_chars = ID3Field_GetUNICODE_1(id3_field,(unicode_t *)(gpointer)string,ID3V2_MAX_STRING_LEN,0); // "convert_string_1" as we need to pass length for UTF-16 string1 = convert_string_1(string,num_chars,"UTF-16BE","UTF-8",FALSE); break; @@ -1279,7 +1279,7 @@ Id3tag_Set_Field (const ID3Frame *id3_frame, // id3lib (3.8.3 at least) always takes big-endian input for Unicode // fields, even if the field is set little-endian. ID3Field_SetEncoding(id3_field,ID3TE_UTF16); - ID3Field_SetUNICODE(id3_field,(const unicode_t*)string_converted); + ID3Field_SetUNICODE(id3_field,(const unicode_t*)(gpointer)string_converted); g_free(string_converted); id3_field_encoding = ID3Frame_GetField(id3_frame,ID3FN_TEXTENC); @@ -1375,7 +1375,7 @@ void Id3tag_Prepare_ID3v1 (ID3Tag *id3_tag) /* Read UTF-16 frame. */ string = g_malloc0(sizeof(unicode_t)*ID3V2_MAX_STRING_LEN+1); - num_chars = ID3Field_GetUNICODE_1(id3_field_text,(unicode_t *)string,ID3V2_MAX_STRING_LEN,0); + num_chars = ID3Field_GetUNICODE_1(id3_field_text,(unicode_t *)(gpointer)string,ID3V2_MAX_STRING_LEN,0); // "convert_string_1" as we need to pass length for UTF-16 string1 = convert_string_1(string,num_chars,"UTF-16BE","UTF-8",FALSE); -- GitLab