A misplaced break statement was causing the tag-matching loop to end after only checking the first match, so if that first match belonged to a different course the matching function would return with no result. There was also a bug in the client-side tag sorting function that would cause tags to get re-sorted in alphabetical order with no regard to whether a tag was curated or not.
A misplaced
break
statement was causing the tag-matching loop to end after only checking the first match, so if that first match belonged to a different course the matching function would return with no result. There was also a bug in the client-side tag sorting function that would cause tags to get re-sorted in alphabetical order with no regard to whether a tag was curated or not.