Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
13
Issues
13
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
GSoC2018
macOS
vlc
Commits
94f0635d
Commit
94f0635d
authored
Dec 19, 2016
by
François Cartegnie
🤞
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
input: add input_item_SetEpgEvent
parent
710d099a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
36 additions
and
0 deletions
+36
-0
src/input/input_interface.h
src/input/input_interface.h
+1
-0
src/input/item.c
src/input/item.c
+35
-0
No files found.
src/input/input_interface.h
View file @
94f0635d
...
...
@@ -35,6 +35,7 @@ void input_item_SetPreparsed( input_item_t *p_i, bool b_preparsed );
void
input_item_SetArtNotFound
(
input_item_t
*
p_i
,
bool
b_not_found
);
void
input_item_SetArtFetched
(
input_item_t
*
p_i
,
bool
b_art_fetched
);
void
input_item_SetEpg
(
input_item_t
*
p_item
,
const
vlc_epg_t
*
p_epg
);
void
input_item_SetEpgEvent
(
input_item_t
*
p_item
,
const
vlc_epg_event_t
*
p_epg_evt
);
void
input_item_SetEpgOffline
(
input_item_t
*
);
/**
...
...
src/input/item.c
View file @
94f0635d
...
...
@@ -897,6 +897,41 @@ void input_item_MergeInfos( input_item_t *p_item, info_category_t *p_cat )
vlc_event_send
(
&
p_item
->
event_manager
,
&
event
);
}
void
input_item_SetEpgEvent
(
input_item_t
*
p_item
,
const
vlc_epg_event_t
*
p_epg_evt
)
{
bool
b_changed
=
false
;
vlc_mutex_lock
(
&
p_item
->
lock
);
for
(
int
i
=
0
;
i
<
p_item
->
i_epg
;
i
++
)
{
vlc_epg_t
*
p_epg
=
p_item
->
pp_epg
[
i
];
for
(
size_t
j
=
0
;
j
<
p_epg
->
i_event
;
j
++
)
{
/* Same event can exist in more than one table */
if
(
p_epg
->
pp_event
[
j
]
->
i_id
==
p_epg_evt
->
i_id
)
{
vlc_epg_event_t
*
p_dup
=
vlc_epg_event_Duplicate
(
p_epg_evt
);
if
(
p_dup
)
{
if
(
p_epg
->
p_current
==
p_epg
->
pp_event
[
j
]
)
p_epg
->
p_current
=
p_dup
;
vlc_epg_event_Delete
(
p_epg
->
pp_event
[
j
]
);
p_epg
->
pp_event
[
j
]
=
p_dup
;
b_changed
=
true
;
}
break
;
}
}
}
vlc_mutex_unlock
(
&
p_item
->
lock
);
if
(
b_changed
)
{
vlc_event_t
event
=
{
.
type
=
vlc_InputItemInfoChanged
,
};
vlc_event_send
(
&
p_item
->
event_manager
,
&
event
);
}
}
#define EPG_DEBUG
void
input_item_SetEpg
(
input_item_t
*
p_item
,
const
vlc_epg_t
*
p_update
)
{
...
...
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