Mercurial > hg > nginx
comparison src/http/modules/ngx_http_mp4_module.c @ 4289:d0dcaff8862b stable-1.0
Merge of r4283:
Fix of "Content-Length" header of MP4 response if start argument was used.
Patch by Piotr Sikora.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Mon, 14 Nov 2011 16:14:11 +0000 |
parents | cc7ea429170d |
children | d2516d4ab842 |
comparison
equal
deleted
inserted
replaced
4288:0f2797e3399e | 4289:d0dcaff8862b |
---|---|
1064 uint64_t atom_size; | 1064 uint64_t atom_size; |
1065 ngx_buf_t *atom; | 1065 ngx_buf_t *atom; |
1066 | 1066 |
1067 atom_data_size = mp4->mdat_data.buf->file_last - start_offset; | 1067 atom_data_size = mp4->mdat_data.buf->file_last - start_offset; |
1068 mp4->mdat_data.buf->file_pos = start_offset; | 1068 mp4->mdat_data.buf->file_pos = start_offset; |
1069 mp4->content_length += atom_data_size; | |
1070 | 1069 |
1071 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, mp4->file.log, 0, | 1070 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, mp4->file.log, 0, |
1072 "mdat new offset @%O:%O", start_offset, atom_data_size); | 1071 "mdat new offset @%O:%O", start_offset, atom_data_size); |
1073 | 1072 |
1074 atom_header = mp4->mdat_atom_header; | 1073 atom_header = mp4->mdat_atom_header; |
1080 sizeof(ngx_mp4_atom_header64_t) + atom_data_size); | 1079 sizeof(ngx_mp4_atom_header64_t) + atom_data_size); |
1081 } else { | 1080 } else { |
1082 atom_size = sizeof(ngx_mp4_atom_header_t) + atom_data_size; | 1081 atom_size = sizeof(ngx_mp4_atom_header_t) + atom_data_size; |
1083 atom_header_size = sizeof(ngx_mp4_atom_header_t); | 1082 atom_header_size = sizeof(ngx_mp4_atom_header_t); |
1084 } | 1083 } |
1084 | |
1085 mp4->content_length += atom_header_size + atom_data_size; | |
1085 | 1086 |
1086 ngx_mp4_set_32value(atom_header, atom_size); | 1087 ngx_mp4_set_32value(atom_header, atom_size); |
1087 ngx_mp4_set_atom_name(atom_header, 'm', 'd', 'a', 't'); | 1088 ngx_mp4_set_atom_name(atom_header, 'm', 'd', 'a', 't'); |
1088 | 1089 |
1089 atom = &mp4->mdat_atom_buf; | 1090 atom = &mp4->mdat_atom_buf; |