minor problem in boolean cast

Started by Cary Huangover 5 years ago2 messageshackers
Jump to latest
#1Cary Huang
cary.huang@highgo.ca

Hi

I noticed that when casting a string to boolean value with input 'of' it still cast it to 'f'. I think with 'of', it should give an error because 'off' is the expected candidate. This may not be intended so I made a simple patch to address this. 

```

postgres=# select cast('of' as boolean);

bool

------

f

(1 row)

```

Cary Huang

-------------

HighGo Software Inc. (Canada)

mailto:cary.huang@highgo.ca

http://www.highgo.ca

Attachments:

0001-boolean-type-cast-fix.patchapplication/octet-stream; name=0001-boolean-type-cast-fix.patchDownload+1-1
#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Cary Huang (#1)
Re: minor problem in boolean cast

Cary Huang <cary.huang@highgo.ca> writes:

I noticed that when casting a string to boolean value with input 'of' it still cast it to 'f'. I think with 'of', it should give an error because 'off' is the expected candidate. This may not be intended so I made a simple patch to address this. 

It's absolutely intended, and documented:

https://www.postgresql.org/docs/devel/datatype-boolean.html

Note the bit about "Unique prefixes of these strings are also accepted".

The code comment just above parse_bool() says the same.

regards, tom lane