The code is using an array to hold a single element at this particular line. Later in the code it is possible that an array is desirable for some other reason; something gets added, or a subroutine called with a funky prototype, or it is otherwise convenient.
Often when examining legacy code you'll find artifacts of the past. Perhaps an array is not all that useful at this point in the code as it exists today, but maybe seven years ago an array was exactly what was needed. Things that needed to change got changed, and things that continued to work didn't get changed.
Or it's just dumb. That's usually the last explanation to assume, though. More often than not either it is this way for a reason now, or is this way because of the code's evolution over time. But dumb is a perfectly reasonable explanation too, and not necessarily an indictment on the developer. I find myself having to forgive myself sometimes, too. The best explanation I have is that I must have been focusing on some other aspect of the problem and didn't notice I had left an inelegant construct laying around as I iterated through the process of crafting a solution.