Commit graph

4814 commits

Author SHA1 Message Date
Benoît Minisini
0fb4390547 [DEVELOPMENT ENVIRONMENT]
* BUG: Publishing dialog: Take the description into account correctly.
* NEW: Software farm: Display the installed softwares.
* NEW: Software farm: Emit at most three requests simultaneously.
* BUG: Opening a web page in a browser now works if the BROWSER environment
  variable is not defined.
* NEW: Remove the white borders in the welcome dialog.

[GB.FORM]
* NEW: Wizard.ActionText and Wizard.ActionPicture are two new properties to
  define the contents of the final 'OK' wizard button.


git-svn-id: svn://localhost/gambas/trunk@6696 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 13:56:06 +00:00
Benoît Minisini
64ac98d336 [GB.QT4]
* BUG: ScrollView: Layout is now correct if the ScrollBar property is set 
  to Scroll.None.


git-svn-id: svn://localhost/gambas/trunk@6695 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 13:06:09 +00:00
Benoît Minisini
dfc8140da0 [INTERPRETER]
* BUG: The process error output callback now immediately closes its file 
  descriptor as soon as read() returns zero or an error, or if the Error
  event is not handled.


git-svn-id: svn://localhost/gambas/trunk@6694 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 11:51:27 +00:00
Benoît Minisini
1fcb7bd02e [INTERPRETER]
* BUG: Don't remove the possible watch when freeing the file. The file may 
  be closed, and the file descritor may have been reused!


git-svn-id: svn://localhost/gambas/trunk@6693 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 02:50:18 +00:00
Benoît Minisini
1a2901e961 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: When installing a software, tags that are desktop 
  menu official categories are used for creating the '*.desktop' file. 
  Consequently, the menu entry shold go to an accurate location of the 
  desktop application menu.
* NEW: Software farm: Some little desgin fixes.
* NEW: Publishing dialog: Some little fixes.

[FARM SERVER]
* BUG: Fix two bugs in search software request.

[INTERPRETER]
* NEW: The data format 'u' displays all milliseconds digits as soon as 
  there is at least two 'u' characters, and not if there is exactly two 
  'u' characters only.

[GB.DESKTOP]
* NEW: DesktopFile.Categories is a new property to read or set the 
  categories of a desktop menu entry.


git-svn-id: svn://localhost/gambas/trunk@6692 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-12-01 00:47:48 +00:00
Benoît Minisini
89d56eb88f [DEVELOPMENT ENVIRONMENT]
* BUG: Don't crash when trying to download the offline help if 'wget' is 
  not installed on the system.
* BUG: Software farm: Don't create a '*.desktop' file if the software is a
  library or a component.
* NEW: Redesign the publish dialog by using a wizard.
* NEW: Use freedesktop categories as possible software tags.

[FARM SERVER]
* NEW: Add a 'size' field in the 'software' table, and an index to be able 
  to sort sotfwares by size later.

[INTERPRETER]
* BUG: Read data ahead before raising a Read event (on Process, File, or 
  any stream). Use the result of that read to detect EOF, as using the 
  stream end-of-file detection routine is not reliable.

[GB.FORM]
* BUG: FileProperties: Fix the media preview.

[GB.MEDIA.FORM]
* BUG: MediaView: Don't crash if the internal media player is not yet 
  initialized.


git-svn-id: svn://localhost/gambas/trunk@6691 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 22:41:41 +00:00
Benoît Minisini
c88e47ddb9 [DEVELOPMENT ENVIRONMENT]
* BUG: Project icons are correctly read again.


git-svn-id: svn://localhost/gambas/trunk@6690 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 00:36:53 +00:00
Benoît Minisini
03cd222bb8 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Software now can be safely installed or removed. The
  source checksum is checked, as well as the required components. Libraries
  and dependencies on other software are not yet taken into account. A
  '*.desktop' file is automatically created on installation now.

[INTERPRETER]
* NEW: Split() has a new behaviour when its escape argument has two 
  characters, the second one being the first splitting character. It uses
  the first character to escape splitting characters. For example,
  Split("a;b~;c;d",";","~;") returns ["a","b;c","d"].
* NEW: String[].Join() method handle the new Split syntax. 
  ["a","b;c","d"].Join(";","~;") returns "a;b~;c;d". Moreover, in the
  traditional escape syntax, the joined string are not escaped anymore if 
  they are void.

[GB.DESKTOP]
* NEW: DesktopFile.MimeTypes is a new property corresponding to the 
  'MimeType' entry of the '*.desktop' file.
* NEW: DesktopFile now can be used for creating or modifying '*.desktop' 
  files.


git-svn-id: svn://localhost/gambas/trunk@6689 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-30 00:30:32 +00:00
Tobias Boege
bf997fb0f3 [GB.DATA]
* BUG: Trie: Use sufficient bit widths in numerical constants (could cause
  data loss on 32 bit systems).
* BUG: TriePrefix: Don't drop reference counts of the Trie when the prefix
  is not found.



git-svn-id: svn://localhost/gambas/trunk@6688 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 18:55:41 +00:00
Benoît Minisini
25dc9cd30d [INTERPRETER]
* BUG: Retrieve the child process output correctly when it has terminated.
  No data should be lost anymore.
* NEW: Remove an unused internal stream method.


git-svn-id: svn://localhost/gambas/trunk@6687 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 15:29:10 +00:00
Benoît Minisini
40937ec321 [INTERPRETER]
* BUG: Process: Don't call the Read event if there is nothing to read.


git-svn-id: svn://localhost/gambas/trunk@6686 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:45:33 +00:00
Benoît Minisini
5796ac4e56 [DEVELOPMENT ENVIRONMENT]
* NEW: Software farm: Now softwares can be installed or removed. 
  Installation is not finished yet. Checksum, components and libraries are
  not checked. Desktop file is not created.
* NEW: Software farm: Design changes in the GUI.
* BUG: Offline help: The help timestamp is now used for detecting updates.
  File modification time is not used anymore as it is a localized time.
* BUG: Source archive files now ignore files named 'core'.

[INTERPRETER]
* BUG: SHELL now correctly resets the interpreter to '/bin/sh' if the 
  System.Shell property is reset to a null string.

[GB.DESKTOP]
* BUG: Desktop.NetworkAvailable now tries to find 'ifconfig' or 'ip' in 
  '/sbin' and '/usr/sbin' before relying on the PATH environment variable.


git-svn-id: svn://localhost/gambas/trunk@6685 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 14:20:31 +00:00
Tobias Boege
ce0d8ec614 [GB.OPENSSL]
* BUG: Fix memory errors from Cipher.List and Digest.List
* NEW: Return Cipher.List and Digest.List sorted without duplicates



git-svn-id: svn://localhost/gambas/trunk@6684 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-29 11:54:07 +00:00
Benoît Minisini
996ff69d37 [INTERPRETER]
* BUG: Process: Don't check end of stream before calling the Read event. I
  don't remember what this test was supposed to fix, but for sure it leads
  to data loss if some data arrives just after the test.


git-svn-id: svn://localhost/gambas/trunk@6683 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-28 20:15:02 +00:00
Benoît Minisini
6bdd82c183 [GB.NET.SMTP]
* BUG: SmtpClient: Correctly detect when connection fails in SSL or TLS 
  mode. Raise an error instead of eating the CPU in an infinite loop.


git-svn-id: svn://localhost/gambas/trunk@6682 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-28 00:50:07 +00:00
Benoît Minisini
655f3474c7 [INTERPRETER]
* NEW: The process child errors raised before the exec() system call are 
  now catched in a separate function called by the compiler explicitly 
  after a SHELL or EXEC assignment.

[COMPILER]
* NEW: SHELL and EXEC assignments now call an hidden subroutine just after
  the assignment to immediately check for a possible child error.


git-svn-id: svn://localhost/gambas/trunk@6681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-27 23:31:51 +00:00
Benoît Minisini
0ca90d8c7e [DEVELOPMENT ENVIRONMENT]
* BUG: Use the 'gb.markdown' component for converting help comments.
* NEW: The software farm window can now download software, but cannot 
  install them yet.

[GB.FORM]
* BUG: ImageView: Setting the Image property to NULL correctly resets the
  control.

[GB.MIME]
* BUG: MimePart.ContentType is actually a read-write property.

[GB.NET.CURL]
* NEW: HttpClient: Add a TargetFile property that allows to override the
  corresponding argument in Get(), Put() and Post() methods.


git-svn-id: svn://localhost/gambas/trunk@6680 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-26 23:41:04 +00:00
Benoît Minisini
eb0b0ca3a3 [DEVELOPMENT ENVIRONMENT]
* BUG: Don't crash if the '.gambas' directory does not exist.


git-svn-id: svn://localhost/gambas/trunk@6679 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 17:08:46 +00:00
Benoît Minisini
ca2bafe8fa [DEVELOPMENT ENVIRONMENT]
* BUG: Do not remove the '.gambas' directory when compiling everything. 
  Just remove its contents, and keep a possible '.svn' directory inside.


git-svn-id: svn://localhost/gambas/trunk@6678 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 16:07:32 +00:00
Benoît Minisini
76ebe74978 [GB.MIME]
* BUG: MimePart.Data does not crash anymore if the mime part is void.


git-svn-id: svn://localhost/gambas/trunk@6677 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 14:25:14 +00:00
Benoît Minisini
e4cd9bce1b [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in the software farm window.

[INTERPRETER]
* NEW: Remove the GB.UnrefKeep() interpreter API, as it is not used 
  anymore.


git-svn-id: svn://localhost/gambas/trunk@6676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 12:43:57 +00:00
Benoît Minisini
b9bfa324eb [GB.NET.CURL]
* BUG: HttpClient: Internal header array is now correctly managed.


git-svn-id: svn://localhost/gambas/trunk@6675 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 12:38:00 +00:00
Benoît Minisini
caecfa5b75 [DEVELOPMENT ENVIRONMENT]
* OPT: Read a farm login password from the desktop wallet once.


git-svn-id: svn://localhost/gambas/trunk@6674 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 02:28:16 +00:00
Benoît Minisini
365f1161fe [GB.SETTINGS]
* BUG: Fix settings saving routine.


git-svn-id: svn://localhost/gambas/trunk@6673 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 02:17:22 +00:00
Benoît Minisini
ea4d04ae83 [DEVELOPMENT ENVIRONMENT]
* NEW: Move the farm servers configuration from the option dialog to its 
  own dialog.
* NEW: The farm servers configuration is accessible from the farm software
  window and from the publishing dialog.
* NEW: Once identified, you can now vote for a software, or remove your 
  vote, by clicking on the star button.
* OPT: Information on farm softwares is cached as much as possible.
* NEW: Add the 'blues' color theme made by Kevin Fishburne.

[FARM SERVER]
* NEW: A ping request.
* BUG: Voting for a software now correctly update the total vote count.

[GB.SETTINGS]
* BUG: Erasing a settings is correctly saved in all cases now.


git-svn-id: svn://localhost/gambas/trunk@6672 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-24 02:10:00 +00:00
Benoît Minisini
a607aaec6f [INTERPRETER]
* NEW: Apply the "close on exec" flag to all non-temporary file descriptors 
  opened by the interpreter.


git-svn-id: svn://localhost/gambas/trunk@6671 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 18:19:57 +00:00
Benoît Minisini
1aa11548d1 [GB.DESKTOP]
* BUG: Patch 'xdg-open' so that 'kde-open' uses its '-noninteracitve' flag.
  That way, the return value seems to be accurate in case of failure.


git-svn-id: svn://localhost/gambas/trunk@6670 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 13:02:55 +00:00
Benoît Minisini
60514b1675 [DEVELOPMENT ENVIRONMENT]
* BUG: Fix crash when there is no farm configured.
* NEW: Add a menu entry for opening the farm window.
* NEW: The farm window saves its configuration now.
* NEW: Hitting space in the tag editor opens a list of all tags stored in 
  the farm.


git-svn-id: svn://localhost/gambas/trunk@6669 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 10:39:19 +00:00
Benoît Minisini
30949597c1 [GB.FORM]
* BUG: ValueBox: The Value property is not visible to the IDE anymore.
* BUG: ValueBox.Text can understand a void string for all ValueBox types 
  now.


git-svn-id: svn://localhost/gambas/trunk@6668 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 10:14:30 +00:00
Benoît Minisini
e49858d554 [GB.FORM]
* BUG: Remove testing dependencies on 'gb.desktop'.
* NEW: Completion.Open() is a new method that explicitly opens the 
  completion list.
* NEW: Completion.Open() is automatically called when pressing the space
  key on a void editor.


git-svn-id: svn://localhost/gambas/trunk@6667 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 09:50:54 +00:00
Benoît Minisini
258a9b213e [DEVELOPMENT ENVIRONMENT]
* BUG: French translation updated.


git-svn-id: svn://localhost/gambas/trunk@6666 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 02:30:00 +00:00
Benoît Minisini
334c9d8beb [DEVELOPMENT ENVIRONMENT]
* NEW: Experimental "Gambas Software Farm" dialog. It allows to browse a 
  farm server, but voting and installing are not yet possible.
* NEW: Requests to the farm server are now displayed in a modal dialog with
  an optional progress bar.

[FARM SERVER]
* BUG: Fix many bugs.
* NEW: Search software by tags.

[GB.DB]
* BUG: Connections: Fix a not enough argument error.

[GB.FORM]
* NEW: URLLabel is a new control that displays a clickable URL. If the 
 'gb.desktop' component is loaded, then a browser is automatically opened 
  when clicking on the link.

[GB.GUI.BASE]
* NEW: ProgressBar now has a flat look. And a new Border property that
  allows to hide the border.

[GB.NET.CURL]
* NEW: HttpClient and FtpClient now raise a 'Cancel' event when their 
  Stop() method is called.
* BUG: Found a workaround for having accurate upload progress data.
* NEW: HttpClient.CopyFrom() is a new method that allows to fill an 
  HttpClient object with the configuration of another HttpClient object.

[GB.QT4]
* BUG: Do not use 'QEventLoop::DeferredDeletion' anymore, it is deprecated.
  Use qApp->sendPostedEvents() instead.


git-svn-id: svn://localhost/gambas/trunk@6665 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 02:22:57 +00:00
Benoît Minisini
d7f5c2816b [GB.NET]
* BUG: Fix the DnsClient properties description: it is synchronous by 
  default.


git-svn-id: svn://localhost/gambas/trunk@6664 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-23 02:16:34 +00:00
Benoît Minisini
6ea0fc1d75 [GB.QT4]
* BUG: Message boxes now uses the current modal dialog as parent if there 
  is no active window.


git-svn-id: svn://localhost/gambas/trunk@6663 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-22 23:37:52 +00:00
Benoît Minisini
75c8e82937 [GB.GUI.BASE]
* BUG: GridView.Select() with one argument now only selects one row, as 
  stated by the documentation.


git-svn-id: svn://localhost/gambas/trunk@6662 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-22 22:27:17 +00:00
Benoît Minisini
8de4573bc3 [GB.QT4]
* BUG: ScrollView layout algorithm now takes the margin into account 
  correctly.
* BUG: Don't crash when a modal dialog is destroyed while visible.
* BUG: Close the main window explicitly during the QUIT instruction.

git-svn-id: svn://localhost/gambas/trunk@6661 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-21 20:36:37 +00:00
Benoît Minisini
ca89cbf459 [GB.DB]
* BUG: Fix Connection.ApplyTemplate() method.


git-svn-id: svn://localhost/gambas/trunk@6660 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 21:54:05 +00:00
Benoît Minisini
61cae601aa [WIKI SERVER]
* BUG: Some style fixes for lists.
* NEW: Automatically use the english page if the current page has not been 
  translated.
* NEW: Automatically use the parent class if possible when a symbol page 
  does not exist.

[GB.DB]
* BUG: Fix a 'not enough arguments' error in Connections.Create().

[GB.MARKDOWN]
* BUG: <hr> are now only generated from lines including only '*' or '-'. No
  space is allowed anymore.



git-svn-id: svn://localhost/gambas/trunk@6659 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 20:02:43 +00:00
Benoît Minisini
c268af2ccc [GB.MARKDOWN]
* BUG: The list syntax works correctly again.


git-svn-id: svn://localhost/gambas/trunk@6658 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 19:50:53 +00:00
Benoît Minisini
b0bb9fa480 [DEVELOPMENT ENVIRONMENT]
* BUG: Expression analyze now works correctly when ME or SUPER is used.

[FARM SERVER]
* NEW: Use the new automatic database creation feature.

[WIKI SERVER]
* NEW: Support for babelmark markdown syntax comparison.

[GB.DB]
* BUG: Don't crash at connection opening when no database name is 
  specified.
* NEW: The Connection class has now a part written in Gambas, and the C 
  part has been put in a parent hidden class named '_Connection'.
* NEW: Connection.GetTemplate() is a new method that return the description
  of the database as a string template.
* NEW: Connection.ApplyTemplate() is a new method that takes the previous
  template to initialize the structure of the database. If a table included
  in the description already exists, it is silently ignored.
* NEW: Connections.Create() is a new static method that create a specific
  database from a named connection and its template as saved by the IDE
  in the current project.


git-svn-id: svn://localhost/gambas/trunk@6657 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 18:45:18 +00:00
Benoît Minisini
9a89ed795c [GB.MARKDOWN]
* NEW: Support for "standard" markdown ordered list syntax.


git-svn-id: svn://localhost/gambas/trunk@6656 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 09:38:48 +00:00
Benoît Minisini
348a30d013 [GB.MARKDOWN]
* BUG: Don't forget to close the last paragraph.


git-svn-id: svn://localhost/gambas/trunk@6655 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-19 08:59:54 +00:00
Benoît Minisini
32165457cf [DEVELOPMENT ENVIRONMENT]
* BUG: Fix offline help of project classes. Events are visible now.
* NEW: Database editor: The database structure is now written to a 
  '*.template' file in the '.connection' directory.


git-svn-id: svn://localhost/gambas/trunk@6654 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-18 09:53:42 +00:00
Tobias Boege
0395af9468 [GB.OPENSSL]
* BUG: Cipher: Fix memory leaks from returning strings.
* BUG: Cipher[...].Encrypt() now passes the three mandatory arguments when
  creating a CipherText.



git-svn-id: svn://localhost/gambas/trunk@6653 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-17 13:35:14 +00:00
Benoît Minisini
dd41b47ef3 [DEVELOPMENT ENVIRONMENT]
* NEW: The structure of databases is now stored in the *.connection files.
  It will be used for an automatic database initialization feature.

[WEBSITE MAKER]
* NEW: Update for 3.6.2.

[WIKI CGI SCRIPT]
* BUG: Fix the display of page without headers.
* NEW: Indexes are now displayed on two or more columns.

[INTERPRETER]
* NEW: New GB.AllocZero() API for allocating memory and filling it with 
  zeros.

[GB.DB.MYSQL]
* OPT: Cache metadata queries during 30 secondes to speed up things.

[GB.FORM]
* NEW: MenuButton displays a focus rectangle now.

[GB.GUI.BASE]
* BUG: ProgressBar now raises native control events.


git-svn-id: svn://localhost/gambas/trunk@6652 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-16 21:40:47 +00:00
Fabien Bodard
cda2eda390 [GB.FORM]
* NEW: DOcumentView have now a property .Arrangement that allow
  to use the ARrange class to select the way that the documents are diplayed.
* NEW: DocumentView have a property goto to force the Viewer to slide to the
  wanted page.
* NEW: DocumentView have a property ShowShadow to display or not the doc shadows.
* NEW: The properties Spacing and Padding allowto define space between and around
  the docs. The size is given in pixel at zoom = 1.


git-svn-id: svn://localhost/gambas/trunk@6651 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-14 18:16:46 +00:00
Benoît Minisini
234100885c [DEVELOPMENT ENVIRONMENT]
* BUG: Some fixes in offline help generation.
* NEW: The offline stylesheet file is now a symbolic link to the style 
  sheet file located in the wiki project.


git-svn-id: svn://localhost/gambas/trunk@6650 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-13 18:49:58 +00:00
Benoît Minisini
04f57300c1 [COMPILER]
* NEW: USE now can be followed by a comma-separated list of component 
  names. That way the syntax is the same as what was implemented in the
  gambas scripter 'gbs3'.


git-svn-id: svn://localhost/gambas/trunk@6649 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 22:48:31 +00:00
Benoît Minisini
5b930daea7 [INTERPRETER]
* NEW: Support for the new USE instruction.

[COMPILER]
* NEW: A class header now can include USE "xxxx" declarations, where "xxxx"
  is a component name. It means that the specified component will be loaded
  when the class is initialized, the first time it is loaded.


git-svn-id: svn://localhost/gambas/trunk@6648 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 22:25:37 +00:00
Fabien Bodard
07811a939f [GB.FORM]
* BUG: Hidden upper doc cache are correctly removed


git-svn-id: svn://localhost/gambas/trunk@6647 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2014-11-12 10:53:34 +00:00