diff --git a/intern/cycles/kernel/kernel_path.h b/intern/cycles/kernel/kernel_path.h
index 650e3b0..657fb5d 100644
--- a/intern/cycles/kernel/kernel_path.h
+++ b/intern/cycles/kernel/kernel_path.h
@@ -675,6 +675,14 @@ ccl_device_inline float4 kernel_path_integrate(KernelGlobals *kg,
#endif
#ifdef __VOLUME__
+ if(!hit && state.volume_stack[0].shader != SHADER_NONE) {
+ if(kernel_data.background.volume_shader != SHADER_NONE) {
+ state.volume_stack[1].shader = SHADER_NONE;
+ }
+ else {
+ state.volume_stack[0].shader = SHADER_NONE;
+ }
+ }
/* volume attenuation, emission, scatter */
if(state.volume_stack[0].shader != SHADER_NONE) {
Ray volume_ray = ray;