Changeset 18571
- Timestamp:
- 11/14/12 18:14:43 (11 years ago)
- Location:
- titan/titan
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
titan/titan/epg.h
r18568 r18571 831 831 //flag 0: lock 832 832 //flag 1: nolock 833 struct epg* addoldentryepg(struct channel* chnode, struct epg* newnode, int flag) 834 { 835 // debug(1000, "in"); 836 837 if(newnode == NULL) 838 { 839 debug(1000, "out-> NULL detect"); 840 return NULL; 841 } 842 843 if(flag == 0) m_lock(&status.epgmutex, 4); 844 845 free(newnode->title); 846 newnode->title = NULL; 847 free(newnode->subtitle); 848 newnode->subtitle = NULL; 849 free(newnode->desc); 850 newnode->desc = NULL; 851 newnode->desclen = 0; 852 newnode->desccomplen = 0; 853 854 if(newnode == chnode->epg) 855 { 856 chnode->epg = newnode->next; 857 if(chnode->epg != NULL) 858 chnode->epg->prev = NULL; 859 } 860 else 861 { 862 if(newnode->prev != NULL) 863 { 864 newnode->prev->next = newnode->next; 865 if(newnode->next != NULL) 866 newnode->next->prev = newnode->prev; 867 } 868 } 869 870 if(flag == 0) m_unlock(&status.epgmutex, 4); 871 872 addoldentry((void*)newnode, 0, time(NULL) + 3600, NULL); 873 874 // debug(1000, "out"); 875 return newnode; 876 } 877 878 //flag 0: lock 879 //flag 1: nolock 833 880 struct epg* addepg(struct channel* chnode, int eventid, int version, time_t starttime, time_t endtime, struct epg* last, int flag) 834 881 { … … 897 944 // debug(1000, "out"); 898 945 return newnode; 946 } 947 948 void deloldentryepg(struct epg* node) 949 { 950 debug(1000, "in"); 951 952 if(node == NULL) 953 { 954 debug(1000, "out-> NULL detect"); 955 return; 956 } 957 958 free(node->title); 959 node->title = NULL; 960 free(node->subtitle); 961 node->subtitle = NULL; 962 free(node->desc); 963 node->desc = NULL; 964 965 free(node); 966 node = NULL; 967 968 debug(1000, "out"); 899 969 } 900 970 -
titan/titan/global.h
r18520 r18571 1611 1611 pthread_mutex_init(&status.accelfbmutex, NULL); 1612 1612 pthread_mutex_init(&status.mediadbmutex, NULL); 1613 pthread_mutex_init(&status.oldentrymutex, NULL); 1613 1614 } 1614 1615 else … … 1632 1633 pthread_mutex_destroy(&status.accelfbmutex); 1633 1634 pthread_mutex_destroy(&status.mediadbmutex); 1635 pthread_mutex_destroy(&status.oldentrymutex); 1634 1636 } 1635 1637 } … … 1962 1964 case 16: debug(900, "accelfbmutex lock"); break; 1963 1965 case 17: debug(900, "mediadbmutex lock"); break; 1966 case 18: debug(900, "oldentrymutex lock"); break; 1964 1967 default: debug(900, "unknown mutex lock"); break; 1965 1968 } … … 1989 1992 case 16: debug(900, "accelfbmutex unlock"); break; 1990 1993 case 17: debug(900, "mediadbmutex unlock"); break; 1994 case 18: debug(900, "oldentrymutex unlock"); break; 1991 1995 default: debug(900, "unknown mutex unlock"); break; 1992 1996 } -
titan/titan/header.h
r18542 r18571 735 735 struct epg* getepgbytime(struct channel* chnode, time_t akttime); 736 736 char* epgdescunzip(struct epg* epgnode); 737 struct epg* addoldentryepg(struct channel* chnode, struct epg* newnode, int flag); 738 void deloldentryepg(struct epg* node); 737 739 738 740 //standby.h -
titan/titan/struct.h
r18509 r18571 189 189 enum {FUNCTEXT, FUNCPIC, FUNCPROGRESS}; 190 190 enum {CASESSIONCREATE, CASESSIONBUSY, CASESSIONDEL, CASESSIONSTART, CASESSIONFINAL, CARESFIRSTENQUIRY, CARESCHANGE, CARESENQUIRY, CADATETIMESEND, CAMMIIDLE, CAMMIDISPLAYREPLAY, CAMMIFAKEOK}; 191 192 struct oldentry 193 { 194 void* entry; 195 //0 = epg 196 int type; 197 time_t del; 198 struct oldentry* next; 199 }; 191 200 192 201 struct unicable … … 1111 1120 pthread_mutex_t accelfbmutex; 1112 1121 pthread_mutex_t mediadbmutex; 1122 pthread_mutex_t oldentrymutex; 1113 1123 // mutex for VFD handling 1114 1124 pthread_mutex_t vfdmutex; -
titan/titan/titan.c
r18524 r18571 48 48 struct mediadbcache* mediadbcache[MEDIADBCACHEMAX] = {NULL}; 49 49 struct unicable* unicable = NULL; 50 struct oldentry* oldentry = NULL; 50 51 51 52 #ifdef SH4 … … 61 62 #endif 62 63 64 #include "oldentry.h" 63 65 #include "ipkg.h" 64 66 #include "jsmn.h" … … 391 393 free_shutdowntimervar(); 392 394 freeinetwork(); 395 freeoldentry(); 393 396 } 394 397 else … … 835 838 //check net 836 839 addtimer(&addinetworkall, START, 15000, -1, NULL, NULL, NULL); 837 838 840 //check kill net (security) 839 841 addtimer(&ckeckkillnetthread, START, 1000, 1, NULL, NULL, NULL); 842 //check old entrys and remove from mem 843 addtimer(&oldentrythreadfunc, START, 60000 * 60, -1, NULL, NULL, NULL); 840 844 841 845 //thumb create thread
Note: See TracChangeset
for help on using the changeset viewer.