* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
* AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#include "context.h"
#include "eval.h"
#include "macros.h"
-#include "mfeatures.h"
#include "mtypes.h"
#include "main/dispatch.h"
GLfloat *pnts;
struct gl_1d_map *map = NULL;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
ASSERT(type == GL_FLOAT || type == GL_DOUBLE);
if (u1 == u2) {
GLfloat *pnts;
struct gl_2d_map *map = NULL;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
ASSERT(type == GL_FLOAT || type == GL_DOUBLE);
if (u1==u2) {
GLuint comps;
GLsizei numBytes;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
comps = _mesa_evaluator_components(target);
if (!comps) {
_mesa_error( ctx, GL_INVALID_ENUM, "glGetMapdv(target)" );
GLuint comps;
GLsizei numBytes;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
comps = _mesa_evaluator_components(target);
if (!comps) {
_mesa_error( ctx, GL_INVALID_ENUM, "glGetMapfv(target)" );
GLuint comps;
GLsizei numBytes;
- ASSERT_OUTSIDE_BEGIN_END(ctx);
-
comps = _mesa_evaluator_components(target);
if (!comps) {
_mesa_error( ctx, GL_INVALID_ENUM, "glGetMapiv(target)" );
_mesa_MapGrid1f( GLint un, GLfloat u1, GLfloat u2 )
{
GET_CURRENT_CONTEXT(ctx);
- ASSERT_OUTSIDE_BEGIN_END(ctx);
if (un<1) {
_mesa_error( ctx, GL_INVALID_VALUE, "glMapGrid1f" );
GLint vn, GLfloat v1, GLfloat v2 )
{
GET_CURRENT_CONTEXT(ctx);
- ASSERT_OUTSIDE_BEGIN_END(ctx);
if (un<1) {
_mesa_error( ctx, GL_INVALID_VALUE, "glMapGrid2f(un)" );
void
_mesa_install_eval_vtxfmt(struct _glapi_table *disp,
- const GLvertexformat *vfmt)
+ const GLvertexformat *vfmt,
+ bool beginend)
{
SET_EvalCoord1f(disp, vfmt->EvalCoord1f);
SET_EvalCoord1fv(disp, vfmt->EvalCoord1fv);
SET_EvalPoint1(disp, vfmt->EvalPoint1);
SET_EvalPoint2(disp, vfmt->EvalPoint2);
- SET_EvalMesh1(disp, vfmt->EvalMesh1);
- SET_EvalMesh2(disp, vfmt->EvalMesh2);
-}
-
-
-void
-_mesa_init_eval_dispatch(struct _glapi_table *disp)
-{
- SET_GetMapdv(disp, _mesa_GetMapdv);
- SET_GetMapfv(disp, _mesa_GetMapfv);
- SET_GetMapiv(disp, _mesa_GetMapiv);
- SET_Map1d(disp, _mesa_Map1d);
- SET_Map1f(disp, _mesa_Map1f);
- SET_Map2d(disp, _mesa_Map2d);
- SET_Map2f(disp, _mesa_Map2f);
- SET_MapGrid1d(disp, _mesa_MapGrid1d);
- SET_MapGrid1f(disp, _mesa_MapGrid1f);
- SET_MapGrid2d(disp, _mesa_MapGrid2d);
- SET_MapGrid2f(disp, _mesa_MapGrid2f);
-
- /* GL_ARB_robustness */
- SET_GetnMapdvARB(disp, _mesa_GetnMapdvARB);
- SET_GetnMapfvARB(disp, _mesa_GetnMapfvARB);
- SET_GetnMapivARB(disp, _mesa_GetnMapivARB);
+ /* glEvalMesh1 and glEvalMesh2 are not allowed between glBegin and glEnd.
+ */
+ if (!beginend) {
+ SET_EvalMesh1(disp, vfmt->EvalMesh1);
+ SET_EvalMesh2(disp, vfmt->EvalMesh2);
+ }
}