shithub: dumb

Download patch

ref: 27406abff56cb47d39c1a9e2d4f50336a882be49
parent: 5698ac532ffe1e01f7e23a476a6ea52341276b26
parent: f2cd2349a4a2b49960f4193be7377dbdd9547a95
author: Chris Moeller <kode54@gmail.com>
date: Mon Jul 22 15:28:27 EDT 2013

Merge branch 'master' of github.com:kode54/dumb

--- a/dumb/src/it/itrender.c
+++ b/dumb/src/it/itrender.c
@@ -1929,22 +1929,25 @@
 	channel->playing->slide = 0;
 	channel->playing->finetune = channel->playing->sample->finetune;
 
-	if (envelopes_copied && channel->playing->env_instrument->volume_envelope.flags & IT_ENVELOPE_CARRY) {
-		channel->playing->volume_envelope.tick = vol_env_tick;
-	} else {
-		channel->playing->volume_envelope.tick = 0;
+	if (sigdata->flags & IT_USE_INSTRUMENTS)
+	{
+		if (envelopes_copied && channel->playing->env_instrument->volume_envelope.flags & IT_ENVELOPE_CARRY) {
+			channel->playing->volume_envelope.tick = vol_env_tick;
+		} else {
+			channel->playing->volume_envelope.tick = 0;
+		}
+		if (envelopes_copied && channel->playing->env_instrument->pan_envelope.flags & IT_ENVELOPE_CARRY) {
+			channel->playing->pan_envelope.tick = pan_env_tick;
+		} else {
+			channel->playing->pan_envelope.tick = 0;
+		}
+		if (envelopes_copied && channel->playing->env_instrument->pitch_envelope.flags & IT_ENVELOPE_CARRY) {
+			channel->playing->pitch_envelope.tick = pitch_env_tick;
+		} else {
+			channel->playing->pitch_envelope.tick = 0;
+		}
+		recalculate_it_envelope_nodes(channel->playing);
 	}
-	if (envelopes_copied && channel->playing->env_instrument->pan_envelope.flags & IT_ENVELOPE_CARRY) {
-		channel->playing->pan_envelope.tick = pan_env_tick;
-	} else {
-		channel->playing->pan_envelope.tick = 0;
-	}
-	if (envelopes_copied && channel->playing->env_instrument->pitch_envelope.flags & IT_ENVELOPE_CARRY) {
-		channel->playing->pitch_envelope.tick = pitch_env_tick;
-	} else {
-		channel->playing->pitch_envelope.tick = 0;
-	}
-	recalculate_it_envelope_nodes(channel->playing);
 	channel->playing->fadeoutcount = 1024;
 	it_reset_filter_state(&channel->playing->filter_state[0]);
 	it_reset_filter_state(&channel->playing->filter_state[1]);