From 2d455fef6eb68a538693605106ad70f86fb5d7f0 Mon Sep 17 00:00:00 2001
From: Nigel Kukard <nkukard@lbsd.net>
Date: Mon, 13 Jan 2014 12:25:25 +0000
Subject: [PATCH] Use first free'd ID, not last

---
 opentrafficshaper/plugins/tc/tc.pm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/opentrafficshaper/plugins/tc/tc.pm b/opentrafficshaper/plugins/tc/tc.pm
index aa929c5..0fcab66 100644
--- a/opentrafficshaper/plugins/tc/tc.pm
+++ b/opentrafficshaper/plugins/tc/tc.pm
@@ -1529,7 +1529,7 @@ sub __reserveMinorTcClass
 	}
 
 	# Maybe we have one free?
-	my $minorTcClass = pop(@{$tcClasses->{$interface}->{$majorTcClass}->{'free'}});
+	my $minorTcClass = shift(@{$tcClasses->{$interface}->{$majorTcClass}->{'free'}});
 
 	# Generate new number
 	if (!$minorTcClass) {
@@ -1562,7 +1562,7 @@ sub _reserveMajorTcClass
 	}
 
 	# Maybe we have one free?
-	my $majorTcClass = pop(@{$tcClasses->{$interface}->{'free'}});
+	my $majorTcClass = shift(@{$tcClasses->{$interface}->{'free'}});
 
 	# Generate new number
 	if (!$majorTcClass) {
@@ -1666,7 +1666,7 @@ sub _reserveTcFilter
 	}
 
 	# Maybe we have one free?
-	my $filterID = pop(@{$tcFilters->{$interface}->{'free'}});
+	my $filterID = shift(@{$tcFilters->{$interface}->{'free'}});
 
 	# Generate new number
 	if (!$filterID) {
-- 
GitLab