diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2011-12-06 16:27:47 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2011-12-06 16:27:47 (GMT) |
| commit | dda9eb51202d34da7afea0a5b42d54287ffe2cac (patch) | |
| tree | 755a7593cdd69f0b8ae1c34a9a6726e454bcd8bb /src/interface.c | |
| parent | 939a599b8076d80f90ba19a15440e199e0c36316 (diff) | |
| download | powder-dda9eb51202d34da7afea0a5b42d54287ffe2cac.zip powder-dda9eb51202d34da7afea0a5b42d54287ffe2cac.tar.gz | |
Fix missing render_mode array change when switching to some display types.
Diffstat (limited to 'src/interface.c')
| -rw-r--r-- | src/interface.c | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/src/interface.c b/src/interface.c index 0d634c8..92193d9 100644 --- a/src/interface.c +++ b/src/interface.c @@ -2721,9 +2721,10 @@ void set_cmode(int cm) // sets to given view mode colour_mode = COLOUR_DEFAULT; free(render_modes); - render_modes = calloc(1, sizeof(unsigned int)); + render_modes = calloc(2, sizeof(unsigned int)); render_mode = RENDER_BASC; render_modes[0] = RENDER_BASC; + render_modes[1] = 0; free(display_modes); display_mode = 0; @@ -2734,10 +2735,11 @@ void set_cmode(int cm) // sets to given view mode if (cmode==CM_VEL) { free(render_modes); - render_modes = calloc(2, sizeof(unsigned int)); - render_mode |= RENDER_EFFE; + render_modes = calloc(3, sizeof(unsigned int)); + render_mode |= RENDER_EFFE | RENDER_BASC; render_modes[0] = RENDER_EFFE; - render_modes[1] = 0; + render_modes[1] = RENDER_BASC; + render_modes[2] = 0; free(display_modes); display_modes = calloc(2, sizeof(unsigned int)); display_mode |= DISPLAY_AIRV; @@ -2748,10 +2750,11 @@ void set_cmode(int cm) // sets to given view mode else if (cmode==CM_PRESS) { free(render_modes); - render_modes = calloc(2, sizeof(unsigned int)); - render_mode |= RENDER_EFFE; + render_modes = calloc(3, sizeof(unsigned int)); + render_mode |= RENDER_EFFE | RENDER_BASC; render_modes[0] = RENDER_EFFE; - render_modes[1] = 0; + render_modes[1] = RENDER_BASC; + render_modes[2] = 0; free(display_modes); display_modes = calloc(2, sizeof(unsigned int)); display_mode |= DISPLAY_AIRP; @@ -2762,10 +2765,11 @@ void set_cmode(int cm) // sets to given view mode else if (cmode==CM_PERS) { free(render_modes); - render_modes = calloc(2, sizeof(unsigned int)); - render_mode |= RENDER_EFFE; + render_modes = calloc(3, sizeof(unsigned int)); + render_mode |= RENDER_EFFE | RENDER_BASC; render_modes[0] = RENDER_EFFE; - render_modes[1] = 0; + render_modes[1] = RENDER_BASC; + render_modes[2] = 0; free(display_modes); display_modes = calloc(2, sizeof(unsigned int)); display_mode |= DISPLAY_PERS; @@ -2811,14 +2815,16 @@ void set_cmode(int cm) // sets to given view mode else if (cmode==CM_FANCY) { free(render_modes); - render_modes = calloc(4, sizeof(unsigned int)); + render_modes = calloc(5, sizeof(unsigned int)); render_mode |= RENDER_FIRE; render_mode |= RENDER_GLOW; render_mode |= RENDER_BLUR; + render_mode |= RENDER_EFFE; render_modes[0] = RENDER_FIRE; render_modes[1] = RENDER_GLOW; render_modes[2] = RENDER_BLUR; - render_modes[3] = 0; + render_modes[3] = RENDER_EFFE; + render_modes[4] = 0; free(display_modes); display_modes = calloc(2, sizeof(unsigned int)); display_mode |= DISPLAY_WARP; @@ -2846,10 +2852,11 @@ void set_cmode(int cm) // sets to given view mode else if (cmode==CM_CRACK) { free(render_modes); - render_modes = calloc(2, sizeof(unsigned int)); - render_mode |= RENDER_EFFE; + render_modes = calloc(3, sizeof(unsigned int)); + render_mode |= RENDER_EFFE | RENDER_BASC; render_modes[0] = RENDER_EFFE; - render_modes[1] = 0; + render_modes[1] = RENDER_BASC; + render_modes[2] = 0; free(display_modes); display_modes = calloc(2, sizeof(unsigned int)); display_mode |= DISPLAY_AIRC; |
