Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0005996 [Squeak] Monticello major sometimes 02-10-07 15:22 10-03-09 19:34
Reporter umejava View Status public  
Assigned To andreas
Priority normal Resolution open Platform
Status assigned   OS
Projection none   OS Version
ETA none Fixed in Version Product Version 3.9
  Product Build
Summary 0005996: Monticello sometimes produces broken mcz file
Description Monticello sometimes creates bad CRC mcz file in non-ascii environment. The problem seems to be in handling of WideString. This patch ensures that any source strings in mcz file will be properly encoded as UTF-8.
Steps To Reproduce
Additional Information
Attached Files  MonM17nPatch-mu.1.1.cs [^] (1,012 bytes) 02-10-07 15:23
 TestPkg.st [^] (485 bytes) 02-10-07 15:41
 TestPkg-mu.1.mcz [^] (1,334 bytes) 02-10-07 15:42
 Monticello-m17n-patch.8.cs [^] (3,474 bytes) 01-23-08 11:12
 Monticello-m17n-patch.20.cs [^] (4,099 bytes) 02-02-08 06:23

- Relationships

- Notes
(0009616 - 140 - 146 - 146 - 146 - 146 - 146)
umejava
02-10-07 15:47

TestPkg.st ... a sample source file for reproducing the problem.
TestPkg-mu.1.mcz ... a broken MCZ created by Monticello before this patch.
 
(0011709 - 42 - 42 - 42 - 42 - 42 - 42)
umejava
01-23-08 11:12

Monticello-m17n-patch.8.cs for Squeak 3.9+
 
(0011730 - 472 - 472 - 472 - 472 - 472 - 472)
umejava
02-02-08 06:36

Monticello-m17n-patch.20.cs is an attempt to keep backward compatibility with old (non-patched) MCZ readers. If MCZ tag-info string has only ascii characters, the string will be written as MacRoman. (.st source code is always written as UTF-8 with BOM). It is not an ideal solution (personally I think any string should be out as UTF-8). But keeping the compatibility is important especially if you would like to work with (non-patched) systems (for example SqueakSource).
 
(0012277 - 64 - 64 - 64 - 64 - 64 - 64)
Keith_Hodges
06-08-08 23:38

Before I add this to Monticello will this patch work in 3.7/3.8?
 
(0012286 - 199 - 199 - 199 - 199 - 199 - 199)
umejava
06-09-08 01:14

Before 3.9, Squeak source file output format does not contain BOM. (UTF8 without BOM was used for WideString source.) So the patch (Monticello-m17n-patch.20.cs) is especially written for 3.9 or 3.10.
 
(0012751 - 79 - 79 - 79 - 79 - 79 - 79)
Keith_Hodges
10-26-08 02:09

But can the patch be included in Monticello which is used by 3.7 and 3.8 users?
 
(0012754 - 146 - 152 - 152 - 152 - 152 - 152)
umejava
10-26-08 03:25

At least for 3.8 final, I confirmed that it works. For 3.7, it will not work, because MultiByteFileStream>>setConverterForCode is not implemented.
 

- Issue History
Date Modified Username Field Change
02-10-07 15:22 umejava New Issue
02-10-07 15:22 umejava Status new => assigned
02-10-07 15:22 umejava Assigned To  => avi
02-10-07 15:23 umejava File Added: MonM17nPatch-mu.1.1.cs
02-10-07 15:41 umejava File Added: TestPkg.st
02-10-07 15:42 umejava File Added: TestPkg-mu.1.mcz
02-10-07 15:47 umejava Note Added: 0009616
01-23-08 11:12 umejava Note Added: 0011709
01-23-08 11:12 umejava File Added: Monticello-m17n-patch.8.cs
02-01-08 23:45 Keith_Hodges Assigned To avi => Keith_Hodges
02-02-08 06:23 umejava File Added: Monticello-m17n-patch.20.cs
02-02-08 06:36 umejava Note Added: 0011730
06-08-08 23:38 Keith_Hodges Note Added: 0012277
06-09-08 01:14 umejava Note Added: 0012286
10-26-08 02:09 Keith_Hodges Note Added: 0012751
10-26-08 03:25 umejava Note Added: 0012754
10-03-09 19:34 Keith_Hodges Assigned To Keith_Hodges => andreas


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
72 total queries executed.
43 unique queries executed.
Powered by Mantis Bugtracker