Changeset aa41414dc52cedb89876e475ef6e9bdadef7a7ed
- Timestamp:
- 26/03/04 10:35:10
(5 years ago)
- Author:
- Gildas Bazin <gbazin@videolan.org>
- git-committer:
- Gildas Bazin <gbazin@videolan.org> 1080293710 +0000
- git-parent:
[0880ea2e685b7d3140c932925b9878121ab7c490]
- git-author:
- Gildas Bazin <gbazin@videolan.org> 1080293710 +0000
- Message:
* src/input/control.c: fixed INPUT_DEL_BOOKMARK.
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r36b86f5 |
raa41414 |
|
| 86 | 86 | |
|---|
| 87 | 87 | case INPUT_DEL_BOOKMARK: |
|---|
| 88 | | p_bkmk = (seekpoint_t *)va_arg( args, seekpoint_t * ); |
|---|
| 89 | | if( p_input->i_bookmarks ) |
|---|
| | 88 | i_bkmk = (int)va_arg( args, int ); |
|---|
| | 89 | if( i_bkmk < p_input->i_bookmarks ) |
|---|
| 90 | 90 | { |
|---|
| 91 | 91 | int i; |
|---|
| | 92 | p_bkmk = p_input->pp_bookmarks[i_bkmk]; |
|---|
| | 93 | TAB_REMOVE( p_input->i_bookmarks, p_input->pp_bookmarks, |
|---|
| | 94 | p_bkmk ); |
|---|
| | 95 | vlc_seekpoint_Delete( p_bkmk ); |
|---|
| | 96 | |
|---|
| | 97 | /* Reflect the changes on the object var */ |
|---|
| | 98 | var_Change( p_input, "bookmark", VLC_VAR_CLEARCHOICES, 0, 0 ); |
|---|
| 92 | 99 | for( i = 0; i < p_input->i_bookmarks; i++ ) |
|---|
| 93 | 100 | { |
|---|
| 94 | | if( ( p_bkmk->i_byte_offset && |
|---|
| 95 | | p_input->pp_bookmarks[i]->i_byte_offset == |
|---|
| 96 | | p_bkmk->i_byte_offset ) || |
|---|
| 97 | | ( p_bkmk->i_time_offset && |
|---|
| 98 | | p_input->pp_bookmarks[i]->i_time_offset == |
|---|
| 99 | | p_bkmk->i_time_offset ) || |
|---|
| 100 | | ( !p_bkmk->i_byte_offset && !p_bkmk->i_time_offset && |
|---|
| 101 | | p_input->pp_bookmarks[i]->i_byte_offset == |
|---|
| 102 | | p_bkmk->i_byte_offset ) ) |
|---|
| 103 | | { |
|---|
| 104 | | p_bkmk = p_input->pp_bookmarks[i]; |
|---|
| 105 | | break; |
|---|
| 106 | | } |
|---|
| | 101 | val.i_int = i; |
|---|
| | 102 | text.psz_string = p_input->pp_bookmarks[i]->psz_name; |
|---|
| | 103 | var_Change( p_input, "bookmark", VLC_VAR_ADDCHOICE, |
|---|
| | 104 | &val, &text ); |
|---|
| 107 | 105 | } |
|---|
| 108 | | if( i < p_input->i_bookmarks ) |
|---|
| 109 | | { |
|---|
| 110 | | TAB_REMOVE( p_input->i_bookmarks, p_input->pp_bookmarks, |
|---|
| 111 | | p_bkmk ); |
|---|
| 112 | | vlc_seekpoint_Delete( p_bkmk ); |
|---|
| 113 | | |
|---|
| 114 | | /* Reflect the changes on the object var */ |
|---|
| 115 | | var_Change( p_input, "bookmark", VLC_VAR_CLEARCHOICES, |
|---|
| 116 | | 0, 0 ); |
|---|
| 117 | | for( i = 0; i < p_input->i_bookmarks; i++ ) |
|---|
| 118 | | { |
|---|
| 119 | | val.i_int = i; |
|---|
| 120 | | text.psz_string = p_input->pp_bookmarks[i]->psz_name; |
|---|
| 121 | | var_Change( p_input, "bookmark", VLC_VAR_ADDCHOICE, |
|---|
| 122 | | &val, &text ); |
|---|
| 123 | | } |
|---|
| 124 | | } |
|---|
| | 106 | i_ret = VLC_SUCCESS; |
|---|
| 125 | 107 | } |
|---|
| 126 | | i_ret = VLC_SUCCESS; |
|---|
| | 108 | else i_ret = VLC_EGENERIC; |
|---|
| 127 | 109 | break; |
|---|
| 128 | 110 | |
|---|
| … | … | |
| 164 | 146 | vlc_seekpoint_Delete( p_bkmk ); |
|---|
| 165 | 147 | } |
|---|
| | 148 | var_Change( p_input, "bookmark", VLC_VAR_CLEARCHOICES, 0, 0 ); |
|---|
| 166 | 149 | } |
|---|
| 167 | 150 | i_ret = VLC_SUCCESS; |
|---|