diff options
author | Liong Sauw Ming <ming@teluu.com> | 2012-09-13 08:08:01 +0000 |
---|---|---|
committer | Liong Sauw Ming <ming@teluu.com> | 2012-09-13 08:08:01 +0000 |
commit | 382f18b2818e120fbcdafb108b8a7224b441a5c7 (patch) | |
tree | b6b98308088999ff7a338f4892bf3ae79ab0eda4 /pjmedia | |
parent | a73c0de977cd52b8c177befb4122a77b61ac3219 (diff) |
Fixed #1581: Fixed crash in video port when the capturer is passive, its stream is passive, and converter is needed
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@4252 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjmedia')
-rw-r--r-- | pjmedia/src/pjmedia/vid_port.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/pjmedia/src/pjmedia/vid_port.c b/pjmedia/src/pjmedia/vid_port.c index 6eee6a7c..db4e4cd1 100644 --- a/pjmedia/src/pjmedia/vid_port.c +++ b/pjmedia/src/pjmedia/vid_port.c @@ -332,9 +332,7 @@ PJ_DEF(pj_status_t) pjmedia_vid_port_create( pj_pool_t *pool, PJMEDIA_SIG_VID_PORT, prm->vidparam.dir, &prm->vidparam.fmt); - if (vp->stream_role == ROLE_ACTIVE) { - need_frame_buf = PJ_TRUE; - } + need_frame_buf = PJ_TRUE; } if (need_frame_buf) { @@ -654,8 +652,10 @@ static pj_status_t convert_frame(pjmedia_vid_port *vp, pj_status_t status = PJ_SUCCESS; if (vp->conv.conv) { - dst_frame->buf = vp->conv.conv_buf; - dst_frame->size = vp->conv.conv_buf_size; + if (!dst_frame->buf || dst_frame->size < vp->conv.conv_buf_size) { + dst_frame->buf = vp->conv.conv_buf; + dst_frame->size = vp->conv.conv_buf_size; + } status = pjmedia_converter_convert(vp->conv.conv, src_frame, dst_frame); } |