forked from bartvdbraak/blender
Curves: Fix wrong bitset being checked against CYCLIC bit flag
Based on report from Talos Security Advisory.
This commit is contained in:
parent
0ae1a1ed48
commit
75e8e3779b
@ -4039,7 +4039,7 @@ bool BKE_nurb_check_valid_u(struct Nurb *nu)
|
|||||||
return true; /* not a nurb, lets assume its valid */
|
return true; /* not a nurb, lets assume its valid */
|
||||||
|
|
||||||
if (nu->pntsu < nu->orderu) return false;
|
if (nu->pntsu < nu->orderu) return false;
|
||||||
if (((nu->flag & CU_NURB_CYCLIC) == 0) && (nu->flagu & CU_NURB_BEZIER)) { /* Bezier U Endpoints */
|
if (((nu->flagu & CU_NURB_CYCLIC) == 0) && (nu->flagu & CU_NURB_BEZIER)) { /* Bezier U Endpoints */
|
||||||
if (nu->orderu == 4) {
|
if (nu->orderu == 4) {
|
||||||
if (nu->pntsu < 5)
|
if (nu->pntsu < 5)
|
||||||
return false; /* bezier with 4 orderu needs 5 points */
|
return false; /* bezier with 4 orderu needs 5 points */
|
||||||
@ -4060,7 +4060,7 @@ bool BKE_nurb_check_valid_v(struct Nurb *nu)
|
|||||||
|
|
||||||
if (nu->pntsv < nu->orderv)
|
if (nu->pntsv < nu->orderv)
|
||||||
return false;
|
return false;
|
||||||
if (((nu->flag & CU_NURB_CYCLIC) == 0) && (nu->flagv & CU_NURB_BEZIER)) { /* Bezier V Endpoints */
|
if (((nu->flagv & CU_NURB_CYCLIC) == 0) && (nu->flagv & CU_NURB_BEZIER)) { /* Bezier V Endpoints */
|
||||||
if (nu->orderv == 4) {
|
if (nu->orderv == 4) {
|
||||||
if (nu->pntsv < 5)
|
if (nu->pntsv < 5)
|
||||||
return false; /* bezier with 4 orderu needs 5 points */
|
return false; /* bezier with 4 orderu needs 5 points */
|
||||||
|
Loading…
Reference in New Issue
Block a user