mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-26 11:45:37 +00:00
ea398a02dc
Removes armv6 and mmx optimizations. Removes x86inc.asm distinction. This was put in place because of issues with 32bit PIC builds but x86inc.asm has since been improved to support those. Switch to '.S' for arm assembly. There is now an #include for a helper file. All build systems appear to support .S so switch to it for consistency. Remove clang-cl.patch. There have been numerous changes upstream to improve clang support. MozReview-Commit-ID: IHVTbqSY2U7 --HG-- extra : rebase_source : 788796674e3eabed0c178ca327bc5e7628e03382
45 lines
1.8 KiB
Diff
45 lines
1.8 KiB
Diff
# HG changeset patch
|
|
# User Randell Jesup <rjesup@jesup.org>
|
|
# Parent 1b77af186da211485fa9c5573d843d96c708a829
|
|
Bug 1263384: validate input frames against configured resolution in vp8 r=rillian
|
|
|
|
MozReview-Commit-ID: BxDCnJe0mzs
|
|
|
|
diff --git a/media/libvpx/libvpx/vp8/vp8_cx_iface.c b/media/libvpx/libvpx/vp8/vp8_cx_iface.c
|
|
--- a/media/libvpx/libvpx/vp8/vp8_cx_iface.c
|
|
+++ b/media/libvpx/libvpx/vp8/vp8_cx_iface.c
|
|
@@ -855,20 +855,29 @@ static vpx_codec_err_t vp8e_encode(vpx_codec_alg_priv_t *ctx,
|
|
dst_time_stamp =
|
|
pts * 10000000 * ctx->cfg.g_timebase.num / ctx->cfg.g_timebase.den;
|
|
dst_end_time_stamp = (pts + duration) * 10000000 * ctx->cfg.g_timebase.num /
|
|
ctx->cfg.g_timebase.den;
|
|
|
|
if (img != NULL) {
|
|
res = image2yuvconfig(img, &sd);
|
|
|
|
- if (vp8_receive_raw_frame(ctx->cpi, ctx->next_frame_flag | lib_flags, &sd,
|
|
- dst_time_stamp, dst_end_time_stamp)) {
|
|
- VP8_COMP *cpi = (VP8_COMP *)ctx->cpi;
|
|
- res = update_error_state(ctx, &cpi->common.error);
|
|
+ if (sd.y_width != ctx->cfg.g_w || sd.y_height != ctx->cfg.g_h) {
|
|
+ /* from vpx_encoder.h for g_w/g_h:
|
|
+ "Note that the frames passed as input to the encoder must have this
|
|
+ resolution"
|
|
+ */
|
|
+ ctx->base.err_detail = "Invalid input frame resolution";
|
|
+ res = VPX_CODEC_INVALID_PARAM;
|
|
+ } else {
|
|
+ if (vp8_receive_raw_frame(ctx->cpi, ctx->next_frame_flag | lib_flags,
|
|
+ &sd, dst_time_stamp, dst_end_time_stamp)) {
|
|
+ VP8_COMP *cpi = (VP8_COMP *)ctx->cpi;
|
|
+ res = update_error_state(ctx, &cpi->common.error);
|
|
+ }
|
|
}
|
|
|
|
/* reset for next frame */
|
|
ctx->next_frame_flag = 0;
|
|
}
|
|
|
|
cx_data = ctx->cx_data;
|
|
cx_data_sz = ctx->cx_data_sz;
|