Posted by Jaime | Posted in Coding | Posted on 25-02-2009
Tags: EXC_BAD_ACCESS, GDB, Mac OS X, Xcode
Recently I worked on a project that had a NIB and XIB in it and for some strange reason I was getting a EXC_BAD_ACCESS error message in GDB with NSPopAutoReleasepool being the culprit. The best part about the problem was that the only indicator I had for the call stack was was four question marks ‘????’. That didn’t make too much sense.
Luckily, I came across this posting on cocoadev: click here
The point to the article was how to intelligently look at the error and get a call stack from code that is normally hidden from you in Cocoa. This article shows you how to turn on those extra debugging options so that you can figure out where you are causing the problem.
In my case, I was double-free-ing an object that was already being handled by NSAutoreleasePool.
Posted by Jaime | Posted in Review | Posted on 20-02-2009
Tags: CruxTech, Icon, Icon creator, Icon editor, Mac OS X, Panic
I’m currently working on a website and like any website, it needs graphics. I was checking out some websites that have awesome icons, like CruxTech and Panic and I envy the cool tools that exist for Windows for making icons. One of those programs is Axialis IconWorkshop.
This Windows only application looks really cool and appears to make icon editing a breeze. However, I work on a Mac and I wanted something similar to this. I could not believe that I couldn’t find anything similar to this till now!
I came across a program named Art Text 2 from BeLight Software. This app so far has proved to be an easy to use program that allows me to create exceptional icons.
Now, why am I talking about this program on my webblog? Here’s why: I’ve spent so much time looking for an easy to use program that allows me to create great icons that I find it only necessary to let as many people as possible know about this program.
Give it a try. Let me know what you think. If you know of anything better out there, let me know.
Posted by Jaime | Posted in Coding, Not-so-funny | Posted on 15-02-2009
Tags: CaptureNX, Mac OS X, Nikon, Photo Organizing, ViewNX
I think it was a sign. I should have know that this was how my day was going to begin. I started up my Xbox 360 and I got the red rings of death. This is not the first time this has happened to me, but I’m especially pissed since this was Microsoft’s idea of a home media center, their answer to having all media consolidated in one box doesn’t work when I need it to.
So there is my 2 year, screaming and tantrum-ing because he wants to watch Little Einsteins and that is not happening because of the red rings of death. So, I distract him and turn on the DVR to show him some recorded shows.
Well, with that over, I go to my trusty laptop running Mac OS X. The night before, I fired up ViewNX and spent the whole night organizing my photos in that program and got them ready for uploading to myPictureTown. The program comes with a built in uploader to myPictureTown. That’s nice, but the uploader program is a little strange. For example, when the uploads are done, it displays the Console program, which is a program that is usually used for reporting errors. The uploader uses it to tell me that the pictures have been uploaded.
ViewNX is also a little strange. It is slower than iPhoto and you can’t view all of your photos in one pane: it segregates photos by the folders they are in which is a real pain in the butt if you have many images you want to upload spanning multiple folders.
Well for now, I wasn’t going to lament. I spent the time tagging my photos and used the myPictureTown photo uploader to upload the pictures to my account.
Well, my Xbox died and I had to calm down my son. After that, I went upstairs expecting to see the console program telling me that the uploads were done. Instead I see the uploader still trying to upload pictures and telling me that it still has 26 images to go… WTF!!! That was over 12 hours ago!
What was happening? I tried canceling the upload process. Nope. That cancel button works as well as the cancel button did on the AOL download progress dialog. Click click click and nothing happens… nothing happens… nothing… happens…
I had to force quit the program and check my account to see if any images had uploaded. Nothing. Nada. Zilch.
All right. Take a deep breath. Quit the programs and try again. This time, I’ll only do one image.
Nope. It doesn’t work. No image or new album created.
So. Now what. I guess I’ll reinvent the wheel. Why? Because there’s nothing else out there that works like I want it too.
I want a program that is easy and fast like iPhoto, but has the image editing and tagging like ViewNX. CaptureNX is too slow on my laptop. Adobe Lightroom you say? No, the image quality out of that program is simply not good enough.
So to start, I’m going to create a program that let’s me easily organize all of my photos. From there, I think I’ll create an uploader to Flickr. myPictureTown is nice, but I end up uploading to Flickr anyway from there and myPictureTown strips out the EXIF data, so I might as well go straight to where I want to go…
Posted by Jaime | Posted in Coding | Posted on 11-02-2009
Tags: Apple Mail, AppleScript, Encryption, GPG, PGP
In a previous posting, I had listing all of the applications you would need to decrypt and encrypt email messages in Apple Mail. However, I did find that after moving up to Mac OS X 10.5.6, I was unable to decrypt messages delivered from certain mail servers. I could decrypt the messages by hand, but this was a real pain to do over and over.
So this is a perfect opportunity to leverage AppleScript!
The script on this page which was actually inspired from other scripts in the “AppleScript Examples” folder in the Applications folder. The script gets the contents of the currently selected email message and creates a temp file in the temp folder path. The script then uses the Terminal.app application to invoke gpg which is installed when you install the “GNU Privacy Guard” application, and then displays the message in TextEdit. Not an elegant solution, but it gets the job done.
set passphrase to "MySuperSecretPassphrase" set randNumber to ((random number) as string) set tempPath to ((path to temporary items from user domain) as string) set encryptedFP to tempPath & "EncryptedMessage" & randNumber & ".eml" set decryptedFP to tempPath & "DecyptedMessage" & randNumber & ".txt" tell application "Mail" set selectedMessages to selection if (count of selectedMessages) is equal to 0 then display alert "No Messages Selected" message "Select the message you want to get the raw source of before running this script" else set theMessage to item 1 of selectedMessages set theSource to source of theMessage set theFileID to open for access file encryptedFP with write permission set eof of theFileID to 0 -- in case there happens to be a temporary file with this name already, wipe it out write theSource to theFileID close access theFileID set encryptedFP to POSIX path of encryptedFP -- convert colons to forwardslashes set decryptedFP to POSIX path of decryptedFP end if end tell tell application "Terminal" activate with timeout of 1800 seconds do script with command "echo '" & passphrase & "' | gpg --passphrase-fd 0 -v --output " & decryptedFP & " --decrypt " & encryptedFP end timeout end tell delay (1) -- Let's give the Terminal.app some time to work tell application "Finder" set fileToOpen to tempPath & "DecyptedMessage" & randNumber & ".txt" if exists file fileToOpen then tell application "TextEdit" activate open fileToOpen end tell tell application "Terminal" quit end tell else display dialog "Couldn't find file " & decryptedFP open folder tempPath end if end tell
If you happen upon this page because you had the same problems that I did, then I hope this script helps you out.