Re: [PATCH] SMPP validity
Vibhu Mohindra <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
> > In that case the calculation to get the difference in minutes may be > > more like > > > > (local_tm.tm_year - gmt_tm.tm_year) * 365*24*60 + > > (local_tm.tm_yday - gmt_tm.tm_yday) * 24*60 + > > (local_tm.tm_hour - gmt_tm.tm_hour) * 60 + > > (local_tm.tm_min - gmt_tm.tm_min ); > > Why would I want to handle years and days when I only need the hour > difference ? OK, here's why looking only at hours and minutes isn't enough. A country which is +12 GMT will be identified at 11am as being -12 GMT. Past noon it will be correctly identified as +12 GMT. Our normalising version which adds/subtracts 24 hours doesn't work for such a place. The problem is similar for a place which is -12 GMT. I believe that it is not a matter of correcting the normalising algorithm proposed. In fact, this cannot be corrected only by looking at hours and minutes. So you get into the process of comparing days of the year as well. That leads to having to compare years as well to account for wrap arounds on New Year's. That leads to accounting for leap years... Working with dates is not easy, and one shouldn't assume an "easy" algorithm will work, and so why go to the bother of using a library function. I am not lazy at all and will gladly dive into re-implementing this algorithm for Kannel if it is so desired, and we are prepared to go through the same amount of testing etc. that the library implementors have already gone through, to produce something as correct and reliable. Vibhu
signature.asc
(application/pgp-signature, 232 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE9ZPVDvgqsqbNQjqcRAk0FAJ9NdiJ7JHybIDLZw9s22dYfw0pEoQCfSLk1 pk6IBEF46QRMDeQtBpddGJQ= =BVkO -----END PGP SIGNATURE-----