diff --git a/VERSION b/VERSION index 28d370f2..eae5ed79 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -xorm v0.5.2.0329 +xorm v0.5.3.0331 diff --git a/logger.go b/logger.go index f736e49b..b4f97378 100644 --- a/logger.go +++ b/logger.go @@ -72,18 +72,18 @@ func NewSimpleLogger3(out io.Writer, prefix string, flag int, l core.LogLevel) * } } -// Err implement core.ILogger +// Error implement core.ILogger func (s *SimpleLogger) Error(v ...interface{}) { if s.level <= core.LOG_ERR { - s.ERR.Println(v...) + s.ERR.Output(2, fmt.Sprint(v...)) } return } -// Errf implement core.ILogger +// Errorf implement core.ILogger func (s *SimpleLogger) Errorf(format string, v ...interface{}) { if s.level <= core.LOG_ERR { - s.ERR.Printf(format, v...) + s.ERR.Output(2, fmt.Sprintf(format, v...)) } return } @@ -91,7 +91,7 @@ func (s *SimpleLogger) Errorf(format string, v ...interface{}) { // Debug implement core.ILogger func (s *SimpleLogger) Debug(v ...interface{}) { if s.level <= core.LOG_DEBUG { - s.DEBUG.Println(v...) + s.DEBUG.Output(2, fmt.Sprint(v...)) } return } @@ -99,7 +99,7 @@ func (s *SimpleLogger) Debug(v ...interface{}) { // Debugf implement core.ILogger func (s *SimpleLogger) Debugf(format string, v ...interface{}) { if s.level <= core.LOG_DEBUG { - s.DEBUG.Printf(format, v...) + s.DEBUG.Output(2, fmt.Sprintf(format, v...)) } return } @@ -107,7 +107,7 @@ func (s *SimpleLogger) Debugf(format string, v ...interface{}) { // Info implement core.ILogger func (s *SimpleLogger) Info(v ...interface{}) { if s.level <= core.LOG_INFO { - s.INFO.Println(v...) + s.INFO.Output(2, fmt.Sprint(v...)) } return } @@ -115,23 +115,23 @@ func (s *SimpleLogger) Info(v ...interface{}) { // Infof implement core.ILogger func (s *SimpleLogger) Infof(format string, v ...interface{}) { if s.level <= core.LOG_INFO { - s.INFO.Printf(format, v...) + s.INFO.Output(2, fmt.Sprintf(format, v...)) } return } -// Warning implement core.ILogger +// Warn implement core.ILogger func (s *SimpleLogger) Warn(v ...interface{}) { if s.level <= core.LOG_WARNING { - s.WARN.Println(v...) + s.WARN.Output(2, fmt.Sprint(v...)) } return } -// Warningf implement core.ILogger +// Warnf implement core.ILogger func (s *SimpleLogger) Warnf(format string, v ...interface{}) { if s.level <= core.LOG_WARNING { - s.WARN.Printf(format, v...) + s.WARN.Output(2, fmt.Sprintf(format, v...)) } return } diff --git a/session.go b/session.go index eec0b858..e6eb0431 100644 --- a/session.go +++ b/session.go @@ -1654,12 +1654,13 @@ func (session *Session) _row2Bean(rows *core.Rows, fields []string, fieldsCount for ii, key := range fields { var idx int var ok bool - if idx, ok = tempMap[strings.ToLower(key)]; !ok { + var lKey = strings.ToLower(key) + if idx, ok = tempMap[lKey]; !ok { idx = 0 } else { idx = idx + 1 } - tempMap[strings.ToLower(key)] = idx + tempMap[lKey] = idx if fieldValue := session.getField(dataStruct, key, table, idx); fieldValue != nil { rawValue := reflect.Indirect(reflect.ValueOf(scanResults[ii])) @@ -1697,7 +1698,7 @@ func (session *Session) _row2Bean(rows *core.Rows, fields []string, fieldsCount fieldType := fieldValue.Type() hasAssigned := false - col := table.GetColumn(key) + col := table.GetColumnIdx(key, idx) if col.SQLType.IsJson() { var bs []byte @@ -2065,7 +2066,7 @@ func (session *Session) _row2Bean(rows *core.Rows, fields []string, fieldsCount if !hasAssigned { data, err := value2Bytes(&rawValue) if err == nil { - session.bytes2Value(table.GetColumn(key), fieldValue, data) + session.bytes2Value(col, fieldValue, data) } else { session.Engine.logger.Error(err.Error()) } @@ -4104,7 +4105,7 @@ func (session *Session) tbNameNoSchema(table *core.Table) string { return table.Name } -// Sync2 +// Sync2 synchronize structs to database tables func (s *Session) Sync2(beans ...interface{}) error { engine := s.Engine @@ -4113,7 +4114,7 @@ func (s *Session) Sync2(beans ...interface{}) error { return err } - structTables := make([]*core.Table, 0) + var structTables []*core.Table for _, bean := range beans { v := rValue(bean) diff --git a/xorm.go b/xorm.go index 91aa8bc7..fad9c0c4 100644 --- a/xorm.go +++ b/xorm.go @@ -17,7 +17,7 @@ import ( const ( // Version show the xorm's version - Version string = "0.5.2.0329" + Version string = "0.5.3.0331" ) func regDrvsNDialects() bool {