На 11.03.2010 16:05, Yavor Doganov написа:
Опитвам се да разбера откъде се получава този очевидно некоректен
формат. Прилагам тестова програма, която демонстрира проблема.
Естествено, грешката може и да е в GNUstep, макар и в момента да не
мога да разбера как точно и къде (затова и пиша тук първо). Първата
ми горе-долу логична мисъл е, че форматът на GNUstep не поддържа
заместване на %k съгласно документацията на използвания метод [2].
Ще ми е много полезно ако някои от вас пробват да компилират и
изпълнят програмата, особено на системи !Дебиан.
Някакви идеи? (Благодаря предварително.)
Прилагам кръпка към твоята програма, която възпроизвежда грешката с нещо
различно от %k – несъщeствуващ формат %o. От тук си правя извода, че
проблемът е в GNUstep.
Изход от date :
$ date +"%o, %M, %S"
%o, 08, 27
Изход от програмата:
$ ./obj/NSTimeFormatString
%k,%M,%S
%k,10,10
%o, %M, %S
%o, 10, 10
--- NSTimeFormatString.m.orig 2010-03-11 23:38:13.000000000 +0200
+++ NSTimeFormatString.m 2010-03-11 23:42:02.000000000 +0200
@@ -7,10 +7,14 @@
NSCalendarDate *date = [NSCalendarDate calendarDate];
NSString *format =
[[NSUserDefaults standardUserDefaults] objectForKey: NSTimeFormatString];
+ NSString *invalid_format = @"%o, %M, %S";
GSPrintf (stdout, @"%...@\n", format);
GSPrintf (stdout, @"%...@\n", [date descriptionWithCalendarFormat: format]);
+ GSPrintf (stdout, @"%...@\n", invalid_format);
+ GSPrintf (stdout, @"%...@\n", [date descriptionWithCalendarFormat: invalid_format]);
+
RELEASE (pool);
exit (EXIT_SUCCESS);
}
_______________________________________________
Dict mailing list
[email protected]
http://zver.fsa-bg.org/cgi-bin/mailman/listinfo/dict