view plugins/crazychat/face.c @ 12435:8f98014a4e7d

[gaim-migrate @ 14742] 1. Protecting the --enable-debug warning tests with an "if gcc" check. 2. Adding a number of warning flags to --enable-debug. All cases of the added warnings have been fixed, except: a. The pointer-arith warnings. I think someone smarter than me should decide whether we need to fix those (and how) or if that should be disabled. That said, I think all the errors left (after you consider the exception listed as "b" below) are in libzephyr. b. Those in src/protocols/sametime/meanwhile at siege's request. Don't worry about these for now. 3. Noting a few warnings we could enable, and the cases we'd have to deal with. Thoughts on these warnings? 4. I added support for FORTIFY_SOURCE. If your compiler has support for this feature, --enable-debug will set _FORTIFY_SOURCE=2. I'm doing this in --enable-debug for the warnings you get. I wouldn't mind having it on by default for the runtime protections as well. Thoughts? committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Fri, 09 Dec 2005 05:32:59 +0000
parents ed017b9c532d
children
line wrap: on
line source

#include "face.h"
#include "sharky.h"
#include "doggy.h"
#include <assert.h>

FACE init_face(KIND kind)
{
	FACE face;
	face = (FACE)malloc(sizeof(*face));

	switch(kind){
		case DOG:
			init_dog(face);			
			break;
		case SHARK:
			init_shark(face);
			break;
		default:
			printf("default face\n");
			init_dog(face);
			break;
	}			
	return face;	
}

void draw_face(FACE face, GLfloat zrot, GLfloat yrot, BOOL left_eye, BOOL right_eye, GLfloat mouth_open, DIRECTION dir, OUTPUT_MODE mode){
	face->draw_func(face, zrot, yrot, left_eye, right_eye, mouth_open, dir, mode);
}

void change_materials(FACE f, int* mats, int num_change){
	int i;
	assert(!(num_change<0 || num_change>NUM_PARTS));
	for(i=0;i<num_change;i++){
		f->mat_indeces[i]=mats[i];
	}
}

void free_face(FACE f){}