This site works best with JavaScript enabled. Please enable JavaScript to get the best experience from this site.
What steps will reproduce the problem?1. Rename the player.dat to your minecraft nickname.2. (re)Place this .dat file in your world file > players3. Start server with Courier installed4. Try to log in.
What is the expected output? What do you see instead?Expected: simply log in.Instead: You get kicked with the message: Internal server error
What version of Courier are you using?1.1.9
What version of CraftBukkit ("Bukkit") are you using? 1.0.1-R1, dev build number etc.1.5.1-R0.1 #2735
Do you have an error log of what happened?Yup! http://pastie.org/private/idadwowx5mrglv3psy0gq
Please provide any additional information below.We have had this issue multiple times now and I thought it would be fixed anytime by craftbukkit, but when I start the server without courier installed, I can log in again. Until now I always worked around this error by deleting the players file.
Since this error comes from courier, we know it is a letter giving this instakick bug. If it is possible to detect this but you can't fix the letter, maybe try to delete it before the player gets kicked. That's always better than deleting the whole inventory.
<p>Corrupted player.dat (with Courier installed)</p>
Alright, so the issue is indeed in CraftBukkit code, sprite here is null yet they call getWidth():
CharacterSprite sprite = font.getChar(text.charAt(i)); for (int r = 0; r < font.getHeight(); ++r) { for (int c = 0; c < sprite.getWidth(); ++c) { if (sprite.get(r, c)) { setPixel(x + c, y + r, color); } } }
Now, I can't replicate this with your player.dat unfortunately since I don't have the message referenced in that players inventory in my message database. What it does seem like is that the player name is corrupted (?) and thus when trying to render it in a Letter ("Mail from xxxx") Bukkit crashes.
So, I guess the real issue is that your players' .dat files get corrupted - but that's not due to Courier is it? Anyways, I've made a blind code change that could possible function as a workaround for you to test - check your PMs.
(If this otoh happens to a regular player name then I'd very much like to know which characters it contains ... :)
Ah of course. I was already surprised you couldn't replicate the bug!
In order for you to replicate this issue, I've uploaded our configuration file including the messages etc.
--Edit: btw. The affected player was lucb2000. When starting the server without Courier installed, you can see that 1 letter is also sent by lucb2000. Then there is 1 other letter with some random IP.--
The bug has been identified and fixed in the latest development branch. It's caused by other plugins doing things "under the hood" affecting Courier and should thus be quite rare. Thus I won't release a new version with this fix only, if I don't receive any information that it's more common than I thought.
If you run a server and this bug happens to you, please contact me through PM and you'll immediately receive a fixed development version.
To post a comment, please login or register a new account.