Skip to content

Commit f10c415

Browse files
committed
Fix binding of vs[tflmr]_[fb]g_color
When the function is not present, we must return 0, not random garbage from the stack
1 parent c725783 commit f10c415

10 files changed

+12
-2
lines changed

n_vsf_bg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsf_bg_color (short handle, long color_space, COLOR_ENTRY * bg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *bg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 201,1, 0,6);
3132

n_vsf_fg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsf_fg_color (short handle, long color_space, COLOR_ENTRY * fg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *fg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 200,1, 0,6);
3132

n_vsl_bg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsl_bg_color (short handle, long color_space, COLOR_ENTRY * bg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *bg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 201,2, 0,6);
3132

n_vsl_fg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsl_fg_color (short handle, long color_space, COLOR_ENTRY * fg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *fg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 200,2, 0,6);
3132

n_vsm_bg_color.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @param color_space color space
88
* @param bg_color COLOR_ENTRY of background color
99
*
10-
* @return -1=wrong function number, 0=function not present, 1=all ok
10+
* @return -1=wrong subfunction number, 0=function not present, 1=all ok
1111
*
1212
* @since NVDI 5 ?
1313
*
@@ -26,6 +26,7 @@ vsm_bg_color (short handle, long color_space, COLOR_ENTRY * bg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *bg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 201,3, 0,6);
3132

n_vsm_fg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsm_fg_color (short handle, long color_space, COLOR_ENTRY * fg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *fg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 200,3, 0,6);
3132

n_vsr_bg_color.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* @param color_space color space
88
* @param bg_color COLOR_ENTRY of the background color
99
*
10-
* @return -1=wrong sunfunction number, 0=function not present, 1=all ok
10+
* @return -1=wrong subfunction number, 0=function not present, 1=all ok
1111
*
1212
* @since NVDI 5 ?
1313
*
@@ -26,6 +26,7 @@ vsr_bg_color (short handle, long color_space, COLOR_ENTRY * bg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *bg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 201,4, 0,6);
3132

n_vsr_fg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vsr_fg_color (short handle, long color_space, COLOR_ENTRY * fg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *fg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP_ESC (vdi_params, handle, 200,4, 0,6);
3132

n_vst_bg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vst_bg_color (short handle, long color_space, COLOR_ENTRY * bg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *bg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP (vdi_params, handle, 201, 0,6);
3132

n_vst_fg_color.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ vst_fg_color (short handle, long color_space, COLOR_ENTRY * fg_color)
2626

2727
vdi_intin_long(0) = color_space;
2828
*(COLOR_ENTRY*)&vdi_intin[2] = *fg_color;
29+
vdi_intout[0] = 0;
2930

3031
VDI_TRAP (vdi_params, handle, 200, 0,6);
3132

0 commit comments

Comments
 (0)