Author Archive
git: How to view all files of a commit
git show --name-only [commit] |
here.com – Cool 3D maps
I just visited here.com to check online Nokia’s maps. I got impressed by the 3D view they offer for some cities.
GCC — 64bits addressing: function returns 32bits pointer
Today, it was the second time I stepped on an interesting problem with GCC (well, it is actually a behavior). I created a function which returns a void*
in a .c file. This C file was then compiled and added in a library (.a). When I used this function in an application, I was getting a void*
pointer were the 32 most significant bits were either zeroed (0x00000000...
) or set to 1 (0xFFFFFFFF...
). My application is 64bit!!
For example, the debug prints I added would return:
[lib] allocated 0x7f756d6fa048 [app] allocated 0x6d6fa048 |
where you can see the “conversion”.
What was the problem? After some time of debugging, I realized that I had forgotten to include the aforementioned function in the corresponding header file :|. So, although GCC could find the function in the library I was linking the application to, I guess it was assuming a wrong return value/header for that function.
The conclusion: Be more careful 😉
PS. I am using the following version of GCC:
$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) |
Skype – Your payment is rejected.. your subscription is terminated
I used to have the “Unlimited Europe” subscription with Skype, so that I can call to landlines in Europe for free. I believe I have had this subscription for the last 3+ years.
Some days ago my monthly payment for the unlimited Europe was rejected due to some issues with my card, so I received two emails:
- Your payment was rejected.
- Your subscription is terminated and will stop in 3 days.
Can you imagine that? They did not let me fix the issue, they just canceled my subscription. Their e-mail is entitled:
Your subscription has been successfully cancelled
Thank you! I am very proud I successfully managed to cancel it..
Today, with my credit card working, I tried to reissue the payment and get my subscription back…
Guess what? The lady at customer support let me know it is IMPOSSIBLE and that I have to buy the subscription again, 1.5 euros per month more expensive.
This is how you treat a 3 years+ loyal customer 🙂
Check if your Linkedin password was stolen
As you all probably heard, there were some stolen passwords from Linkedin this morning (announcement). A simple way to check if your password belongs to the ones stolen is by using the following script:
#!/bin/bash if [ ! -f 'combo_not.txt' ] then if [ ! -f 'combo_not.zip' ] then echo "Downloading the list of sha1s" wget http://wordpress.phobostechnology.com/wp-content/uploads/2012/06/combo_not.zip fi echo "Unziping" unzip combo_not.zip fi mine=$(echo -n "$1" | sha1sum | cut -d' ' -f1); mine0="00000"${mine:5}; echo "checking "$mine echo " and "$mine0 echo "===found:" grep -e $mine -e $mine0 combo_not.txt |
Do chmod +x
on the script and then run it placing a space in front, so that the command does not appear in the history of commands.
For example:
$ ./check.sh 123456 checking 7c4a8d09ca3762af61e59520943dc26494f8941b and 00000d09ca3762af61e59520943dc26494f8941b ===found: 00000d09ca3762af61e59520943dc26494f8941b |
PS. Yes, someone is using the password 123456!
Nokia N9 – Access the Quick Launch Menu
In order to access the Quick Launch Bar you need to swipe up and hold any application for around 1 second.
A very nice application for modifying the Quick Launch Menu is the application called Shortcuts. It allows you to change the entries and the sequence of the menu.
Nokia N9 – Add your Google Calendar account
In order to add your Google calendar account to Nokia N9 you have two alternatives. The advantage of the first is that you can select more than one of your calendars to be synchronized, while with the second you get better synchronization (at least according to my personal experience).
Alternative 1
- Go to Accounts -> Add accounts -> CalDAV
- In the Username field, enter your full Google Account or Google Apps email address.
- In the Password field, enter your Google Account or Google Apps password.
- In the Server field, enter
google.com
Only your default calendar is synchronized by default. If you want to synchronize more calendars of your account go here and select the ones you want.
Alternative 2
- Go to Accounts -> Add accounts -> Mail for Exchange
- Enter your email address.
- Enter your username (it is your email address).
- Enter your password.
- Leave domain field empty.
- Press the Manual Setup. Select what you want to synchronize (Calendar, Mail, Contacts). Use “m.google.com” as the server address and 443 as the port.
Nokia N9 – How to install the terminal application
If you want to get access to the terminal application, you can simply do the following: go to Settings -> Security -> Developer mode and enable it. The terminal will be automatically installed. Enjoy 🙂