Changeset 17306
- Timestamp:
- 07/23/12 20:20:29 (12 years ago)
- Location:
- titan/titan
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
titan/titan/ca.h
r15282 r17306 39 39 //flush buffer 40 40 if(flag == 1) 41 while(dvbreadfd(dvbnode->fd, buf, 0, 256, -1 ) > 0);41 while(dvbreadfd(dvbnode->fd, buf, 0, 256, -1, 0) > 0); 42 42 43 43 //flush queue -
titan/titan/dvb.h
r17303 r17306 51 51 } 52 52 53 int dvbreadfd(int fd, unsigned char *buf, int pos, int count, int tout) 53 //flag 0: eof with timeout 54 //flag 1: eof without timeout 55 int dvbreadfd(int fd, unsigned char *buf, int pos, int count, int tout, int flag) 54 56 { 55 57 struct timeval timeout; … … 82 84 usleep(100000); 83 85 #else 84 tout = tout - 50000;85 usleep( 50000);86 tout = tout - 1000; 87 usleep(1000); 86 88 #endif 87 if( tout > 0) goto retry;89 if(flag == 0 && tout > 0) goto retry; 88 90 debug(250, "dvb read timeout fd=%d", fd); 89 91 } … … 120 122 { 121 123 if(node == NULL) return -2; 122 return dvbreadfd(node->fd, buf, pos, count, tout );124 return dvbreadfd(node->fd, buf, pos, count, tout, 0); 123 125 } 124 126 … … 135 137 136 138 lseek64(fd, pos, SEEK_SET); 137 int ret = dvbreadfd(fd, packet, 0, tssize, -1 );139 int ret = dvbreadfd(fd, packet, 0, tssize, -1, 0); 138 140 if(ret != tssize) 139 141 { … … 891 893 } 892 894 893 int ret = dvbreadfd(fd, packet, 0, tssize, -1 );895 int ret = dvbreadfd(fd, packet, 0, tssize, -1, 0); 894 896 if(ret != tssize && ret != 188) 895 897 { -
titan/titan/header.h
r17249 r17306 361 361 //dvb.h 362 362 unsigned char* dvbgetsdt(struct dvbdev* fenode, int secnr, int timeout); 363 int dvbreadfd(int fd, unsigned char *buf, int pos, int count, int tout );363 int dvbreadfd(int fd, unsigned char *buf, int pos, int count, int tout, int flag); 364 364 int dvbwrite(int fd, unsigned char* buf, int count, int tout); 365 365 int dvbgetdate(time_t* time, int timeout); -
titan/titan/httpd.h
r16492 r17306 450 450 while(readret > 0 && auth == 0) 451 451 { 452 readret = dvbreadfd(filefd, buf, 0, MINMALLOC, 1000 );452 readret = dvbreadfd(filefd, buf, 0, MINMALLOC, 1000, 0); 453 453 if(readret > 0) 454 454 socksend(connfd, buf, readret, 5000 * 1000); -
titan/titan/record.h
r17250 r17306 353 353 #ifdef SIMULATE 354 354 servicenode->recsrcfd = fd; 355 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout );355 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout, 0); 356 356 usleep(1000); 357 357 #else … … 359 359 { 360 360 pthread_mutex_lock(&status.tsseekmutex); 361 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout );361 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout, 1); 362 362 pthread_mutex_unlock(&status.tsseekmutex); 363 363 } 364 364 else 365 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout );365 readret = dvbreadfd(servicenode->recsrcfd, buf, 0, recbsize, readtimeout, 0); 366 366 #endif 367 367 if(readret > 0)
Note: See TracChangeset
for help on using the changeset viewer.