Today's lesson in not using Apple's private methods: somewhere between old/886f95f00431 and #9620 Apple changed their document icon setup process. Use the new methods and fix #9620.
(transplanted from 5cf365ce9352d25978ffd6073d3bc07573aba518)
/*
* Adium is the legal property of its developers, whose names are listed in the copyright file included
* with this source distribution.
*
* This program is free software; you can redistribute it and/or modify it under the terms of the GNU
* General Public License as published by the Free Software Foundation; either version 2 of the License,
* or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
* Public License for more details.
*
* You should have received a copy of the GNU General Public License along with this program; if not,
* write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
NSMutableString*testString=[NSMutableStringstringWithString:@"The quick brown fox jumped over the other quick brown fox"];
//first make the string longer
[testStringreplaceOccurrencesOfString:@"brown"withString:@"kinda lime-green with a bit of ecru"options:NSLiteralSearch];
AISimplifiedAssertEqualObjects([NSMutableStringstringWithString:@"The quick kinda lime-green with a bit of ecru fox jumped over the other quick kinda lime-green with a bit of ecru fox"],
testString,
@"Modified string wasn't equal to hand-made modified string");
//next, try replacing something at the end; if the range didn't expand, this will fail
AISimplifiedAssertEqualObjects([NSMutableStringstringWithString:@"The quick kinda lime-green with a bit of ecru aardvark jumped over the other quick kinda lime-green with a bit of ecru aardvark"],
testString,
@"After making the string longer, modifications no longer took into account the full length");