When safe mode is activated in php the scripts aren't allowed to manipulate files that aren't owned by the user that owns the script. When uploading with a form the uploaded file is temporarily stored in /tmp and isn't owned by the owner of the script. Because of this the script isn't allowed to use file manipulation functions on that file.
Early versions of AShop used the copy function. As of version 2.3 AShop uses the move_uploaded_file function instead of the copy function. The move_uploaded _file functions should not be affected by the safe_mode setting.