Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-2-2
Commits
5e567ccf
Commit
5e567ccf
authored
Feb 08, 2009
by
Rémi Duraffort
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
taglib: Fix #2466 and fix also for writting tag on win.
parent
b9dfd946
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
36 additions
and
2 deletions
+36
-2
modules/meta_engine/taglib.cpp
modules/meta_engine/taglib.cpp
+36
-2
No files found.
modules/meta_engine/taglib.cpp
View file @
5e567ccf
...
...
@@ -326,14 +326,29 @@ static int ReadMeta( vlc_object_t* p_this)
demux_t
*
p_demux
=
(
demux_t
*
)
p_this
;
demux_meta_t
*
p_demux_meta
=
(
demux_meta_t
*
)
p_demux
->
p_private
;
vlc_meta_t
*
p_meta
;
TagLib
::
FileRef
f
;
FileRef
f
;
p_demux_meta
->
p_meta
=
NULL
;
#if defined(WIN32) || defined (UNDER_CE)
if
(
GetVersion
()
<
0x80000000
)
{
wchar_t
wpath
[
MAX_PATH
+
1
];
if
(
!
MultiByteToWideChar
(
CP_UTF8
,
0
,
p_demux
->
psz_path
,
-
1
,
wpath
,
MAX_PATH
)
)
return
VLC_EGENERIC
;
wpath
[
MAX_PATH
]
=
L'\0'
;
f
=
FileRef
(
wpath
);
}
else
return
VLC_EGENERIC
;
#else
const
char
*
local_name
=
ToLocale
(
p_demux
->
psz_path
);
if
(
!
local_name
)
return
VLC_EGENERIC
;
f
=
FileRef
(
local_name
);
LocaleFree
(
local_name
);
#endif
if
(
f
.
isNull
()
)
return
VLC_EGENERIC
;
...
...
@@ -510,6 +525,7 @@ static int WriteMeta( vlc_object_t *p_this )
playlist_t
*
p_playlist
=
(
playlist_t
*
)
p_this
;
meta_export_t
*
p_export
=
(
meta_export_t
*
)
p_playlist
->
p_private
;
input_item_t
*
p_item
=
p_export
->
p_item
;
FileRef
f
;
if
(
!
p_item
)
{
...
...
@@ -517,7 +533,25 @@ static int WriteMeta( vlc_object_t *p_this )
return
VLC_EGENERIC
;
}
FileRef
f
(
p_export
->
psz_file
);
#if defined(WIN32) || defined (UNDER_CE)
if
(
GetVersion
()
<
0x80000000
)
{
wchar_t
wpath
[
MAX_PATH
+
1
];
if
(
!
MultiByteToWideChar
(
CP_UTF8
,
0
,
p_export
->
psz_file
,
-
1
,
wpath
,
MAX_PATH
)
)
return
VLC_EGENERIC
;
wpath
[
MAX_PATH
]
=
L'\0'
;
f
=
FileRef
(
wpath
);
}
else
return
VLC_EGENERIC
;
#else
const
char
*
local_name
=
ToLocale
(
p_export
->
psz_file
);
if
(
!
local_name
)
return
VLC_EGENERIC
;
f
=
FileRef
(
local_name
);
LocaleFree
(
local_name
);
#endif
if
(
f
.
isNull
()
||
!
f
.
tag
()
||
f
.
file
()
->
readOnly
()
)
{
msg_Err
(
p_this
,
"File %s can't be opened for tag writing
\n
"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment